@solidstarters/solid-code-builder 1.0.8 → 1.0.10
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/dist/code-builder/lib/field/FieldManager.d.ts +2 -1
- package/dist/code-builder/lib/field/FieldManager.js +1 -0
- package/dist/code-builder/lib/field/FieldManager.js.map +1 -1
- package/{src/code-builder/lib/field/decorator-managers/dto/DecimalDecoratorManager.d.ts → dist/code-builder/lib/field/decorator-managers/dto/ApiPropertyDecoratorManager.d.ts} +7 -7
- package/{src/code-builder/lib/field/decorator-managers/dto/MinLengthDecoratorManager.js → dist/code-builder/lib/field/decorator-managers/dto/ApiPropertyDecoratorManager.js} +10 -10
- package/dist/code-builder/lib/field/decorator-managers/dto/ApiPropertyDecoratorManager.js.map +1 -0
- package/dist/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.d.ts +2 -2
- package/dist/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.js +8 -8
- package/dist/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.js.map +1 -1
- package/dist/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.d.ts +1 -0
- package/dist/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.js +12 -4
- package/dist/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.js.map +1 -1
- package/dist/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.js +2 -2
- package/dist/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.js.map +1 -1
- package/dist/code-builder/lib/model/helpers.d.ts +1 -0
- package/dist/code-builder/lib/model/helpers.js +4 -0
- package/dist/code-builder/lib/model/helpers.js.map +1 -1
- package/dist/files/generate-model/controllers/__model@dasherize__.controller.ts +3 -2
- package/files/generate-model/controllers/__model@dasherize__.controller.ts +3 -2
- package/package.json +1 -1
- package/src/code-builder/lib/field/FieldManager.ts +1 -0
- package/src/code-builder/lib/field/decorator-managers/dto/ApiPropertyDecoratorManager.ts +127 -0
- package/src/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.ts +10 -10
- package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.ts +13 -3
- package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.ts +2 -2
- package/src/code-builder/lib/model/helpers.ts +4 -0
- package/solidstarters-solid-code-builder-1.0.7.tgz +0 -0
- package/src/code-builder/index.d.ts +0 -9
- package/src/code-builder/index.js +0 -178
- package/src/code-builder/index.js.map +0 -1
- package/src/code-builder/index_spec.d.ts +0 -1
- package/src/code-builder/index_spec.js +0 -46
- package/src/code-builder/index_spec.js.map +0 -1
- package/src/code-builder/lib/field/FieldManager.d.ts +0 -106
- package/src/code-builder/lib/field/FieldManager.js +0 -236
- package/src/code-builder/lib/field/FieldManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/ArrayDecoratorManager.d.ts +0 -26
- package/src/code-builder/lib/field/decorator-managers/dto/ArrayDecoratorManager.js +0 -107
- package/src/code-builder/lib/field/decorator-managers/dto/ArrayDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/BigIntDecoratorManager.d.ts +0 -24
- package/src/code-builder/lib/field/decorator-managers/dto/BigIntDecoratorManager.js +0 -100
- package/src/code-builder/lib/field/decorator-managers/dto/BigIntDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/BooleanDecoratorManager.d.ts +0 -24
- package/src/code-builder/lib/field/decorator-managers/dto/BooleanDecoratorManager.js +0 -102
- package/src/code-builder/lib/field/decorator-managers/dto/BooleanDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/DateDecoratorManager.d.ts +0 -24
- package/src/code-builder/lib/field/decorator-managers/dto/DateDecoratorManager.js +0 -106
- package/src/code-builder/lib/field/decorator-managers/dto/DateDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/DecimalDecoratorManager.js +0 -112
- package/src/code-builder/lib/field/decorator-managers/dto/DecimalDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/EmailDecoratorManager.d.ts +0 -24
- package/src/code-builder/lib/field/decorator-managers/dto/EmailDecoratorManager.js +0 -99
- package/src/code-builder/lib/field/decorator-managers/dto/EmailDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/IntDecoratorManager.d.ts +0 -24
- package/src/code-builder/lib/field/decorator-managers/dto/IntDecoratorManager.js +0 -100
- package/src/code-builder/lib/field/decorator-managers/dto/IntDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/JsonDecoratorManager.d.ts +0 -24
- package/src/code-builder/lib/field/decorator-managers/dto/JsonDecoratorManager.js +0 -100
- package/src/code-builder/lib/field/decorator-managers/dto/JsonDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/LengthDecoratorManager.d.ts +0 -25
- package/src/code-builder/lib/field/decorator-managers/dto/LengthDecoratorManager.js +0 -104
- package/src/code-builder/lib/field/decorator-managers/dto/LengthDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/MaxDecoratorManager.d.ts +0 -25
- package/src/code-builder/lib/field/decorator-managers/dto/MaxDecoratorManager.js +0 -103
- package/src/code-builder/lib/field/decorator-managers/dto/MaxDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/MaxLengthDecoratorManager.d.ts +0 -25
- package/src/code-builder/lib/field/decorator-managers/dto/MaxLengthDecoratorManager.js +0 -103
- package/src/code-builder/lib/field/decorator-managers/dto/MaxLengthDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/MinDecoratorManager.d.ts +0 -25
- package/src/code-builder/lib/field/decorator-managers/dto/MinDecoratorManager.js +0 -102
- package/src/code-builder/lib/field/decorator-managers/dto/MinDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/MinLengthDecoratorManager.d.ts +0 -25
- package/src/code-builder/lib/field/decorator-managers/dto/MinLengthDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/NumberDecoratorManager.d.ts +0 -24
- package/src/code-builder/lib/field/decorator-managers/dto/NumberDecoratorManager.js +0 -112
- package/src/code-builder/lib/field/decorator-managers/dto/NumberDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/OptionalDecoratorManager.d.ts +0 -26
- package/src/code-builder/lib/field/decorator-managers/dto/OptionalDecoratorManager.js +0 -104
- package/src/code-builder/lib/field/decorator-managers/dto/OptionalDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/RegexDecoratorManager.d.ts +0 -25
- package/src/code-builder/lib/field/decorator-managers/dto/RegexDecoratorManager.js +0 -102
- package/src/code-builder/lib/field/decorator-managers/dto/RegexDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/RequiredDecoratorManager.d.ts +0 -25
- package/src/code-builder/lib/field/decorator-managers/dto/RequiredDecoratorManager.js +0 -100
- package/src/code-builder/lib/field/decorator-managers/dto/RequiredDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/StringDecoratorManager.d.ts +0 -24
- package/src/code-builder/lib/field/decorator-managers/dto/StringDecoratorManager.js +0 -99
- package/src/code-builder/lib/field/decorator-managers/dto/StringDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/TransformDecoratorManager.d.ts +0 -25
- package/src/code-builder/lib/field/decorator-managers/dto/TransformDecoratorManager.js +0 -102
- package/src/code-builder/lib/field/decorator-managers/dto/TransformDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/dto/ValidateNestedDecoratorManager.d.ts +0 -30
- package/src/code-builder/lib/field/decorator-managers/dto/ValidateNestedDecoratorManager.js +0 -140
- package/src/code-builder/lib/field/decorator-managers/dto/ValidateNestedDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/entity/ColumnDecoratorManager.d.ts +0 -34
- package/src/code-builder/lib/field/decorator-managers/entity/ColumnDecoratorManager.js +0 -178
- package/src/code-builder/lib/field/decorator-managers/entity/ColumnDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/entity/IndexDecoratorManager.d.ts +0 -24
- package/src/code-builder/lib/field/decorator-managers/entity/IndexDecoratorManager.js +0 -79
- package/src/code-builder/lib/field/decorator-managers/entity/IndexDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.d.ts +0 -29
- package/src/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.js +0 -118
- package/src/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/entity/ManyToManyDecoratorManager.d.ts +0 -37
- package/src/code-builder/lib/field/decorator-managers/entity/ManyToManyDecoratorManager.js +0 -175
- package/src/code-builder/lib/field/decorator-managers/entity/ManyToManyDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/entity/ManyToOneDecoratorManager.d.ts +0 -34
- package/src/code-builder/lib/field/decorator-managers/entity/ManyToOneDecoratorManager.js +0 -179
- package/src/code-builder/lib/field/decorator-managers/entity/ManyToOneDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/entity/OneToManyDecoratorManager.d.ts +0 -33
- package/src/code-builder/lib/field/decorator-managers/entity/OneToManyDecoratorManager.js +0 -155
- package/src/code-builder/lib/field/decorator-managers/entity/OneToManyDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/decorator-managers/entity/UniqueIndexDecoratorManager.d.ts +0 -31
- package/src/code-builder/lib/field/decorator-managers/entity/UniqueIndexDecoratorManager.js +0 -174
- package/src/code-builder/lib/field/decorator-managers/entity/UniqueIndexDecoratorManager.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.d.ts +0 -51
- package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.js +0 -345
- package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.d.ts +0 -58
- package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.js +0 -373
- package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/base/DeleteType.d.ts +0 -6
- package/src/code-builder/lib/field/field-managers/base/DeleteType.js +0 -11
- package/src/code-builder/lib/field/field-managers/base/DeleteType.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldHandler.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldHandler.js +0 -33
- package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForDto.d.ts +0 -23
- package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForDto.js +0 -81
- package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForEntity.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForEntity.js +0 -55
- package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldHandler.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldHandler.js +0 -33
- package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForDto.d.ts +0 -22
- package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForDto.js +0 -75
- package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForEntity.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForEntity.js +0 -51
- package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/computed/ComputedFieldHandler.d.ts +0 -14
- package/src/code-builder/lib/field/field-managers/computed/ComputedFieldHandler.js +0 -30
- package/src/code-builder/lib/field/field-managers/computed/ComputedFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/computed/ComputedFieldManagerForEntity.d.ts +0 -11
- package/src/code-builder/lib/field/field-managers/computed/ComputedFieldManagerForEntity.js +0 -33
- package/src/code-builder/lib/field/field-managers/computed/ComputedFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/date/DateFieldHandler.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/date/DateFieldHandler.js +0 -33
- package/src/code-builder/lib/field/field-managers/date/DateFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForDto.d.ts +0 -22
- package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForDto.js +0 -81
- package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForEntity.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForEntity.js +0 -59
- package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldHandler.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldHandler.js +0 -33
- package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForDto.d.ts +0 -22
- package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForDto.js +0 -77
- package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForEntity.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForEntity.js +0 -53
- package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/email/EmailFieldHandler.d.ts +0 -14
- package/src/code-builder/lib/field/field-managers/email/EmailFieldHandler.js +0 -34
- package/src/code-builder/lib/field/field-managers/email/EmailFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForDto.d.ts +0 -22
- package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForDto.js +0 -72
- package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForEntity.d.ts +0 -12
- package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForEntity.js +0 -44
- package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/int/IntFieldHandler.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/int/IntFieldHandler.js +0 -33
- package/src/code-builder/lib/field/field-managers/int/IntFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForDto.d.ts +0 -22
- package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForDto.js +0 -76
- package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForEntity.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForEntity.js +0 -52
- package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/json/JsonFieldHandler.d.ts +0 -14
- package/src/code-builder/lib/field/field-managers/json/JsonFieldHandler.js +0 -34
- package/src/code-builder/lib/field/field-managers/json/JsonFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForDto.d.ts +0 -20
- package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForDto.js +0 -57
- package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForEntity.d.ts +0 -9
- package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForEntity.js +0 -21
- package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldHandler.d.ts +0 -14
- package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldHandler.js +0 -34
- package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForDto.d.ts +0 -22
- package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForDto.js +0 -63
- package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForEntity.d.ts +0 -11
- package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForEntity.js +0 -34
- package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/media/MediaFieldHandler.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/media/MediaFieldHandler.js +0 -33
- package/src/code-builder/lib/field/field-managers/media/MediaFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForDto.d.ts +0 -23
- package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForDto.js +0 -72
- package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForEntity.d.ts +0 -12
- package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForEntity.js +0 -57
- package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldHandler.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldHandler.js +0 -27
- package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForDto.d.ts +0 -24
- package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForDto.js +0 -75
- package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForEntity.d.ts +0 -12
- package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForEntity.js +0 -35
- package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/password/PasswordFieldHandler.d.ts +0 -14
- package/src/code-builder/lib/field/field-managers/password/PasswordFieldHandler.js +0 -34
- package/src/code-builder/lib/field/field-managers/password/PasswordFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForDto.d.ts +0 -29
- package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForDto.js +0 -121
- package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForEntity.d.ts +0 -11
- package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForEntity.js +0 -37
- package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldHandler.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldHandler.js +0 -33
- package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForDto.d.ts +0 -51
- package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForDto.js +0 -366
- package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForEntity.d.ts +0 -30
- package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForEntity.js +0 -158
- package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldHandler.d.ts +0 -13
- package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldHandler.js +0 -33
- package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForDto.d.ts +0 -43
- package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForDto.js +0 -294
- package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForEntity.d.ts +0 -31
- package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForEntity.js +0 -177
- package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldHandler.d.ts +0 -14
- package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldHandler.js +0 -34
- package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForDto.d.ts +0 -22
- package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForDto.js +0 -63
- package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForEntity.d.ts +0 -11
- package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForEntity.js +0 -34
- package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldHandler.d.ts +0 -14
- package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldHandler.js +0 -34
- package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForDto.d.ts +0 -22
- package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForDto.js +0 -63
- package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForEntity.d.ts +0 -11
- package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForEntity.js +0 -37
- package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldHandler.d.ts +0 -14
- package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldHandler.js +0 -34
- package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldHandler.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForDto.d.ts +0 -8
- package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForDto.js +0 -15
- package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForDto.js.map +0 -1
- package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForEntity.d.ts +0 -11
- package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForEntity.js +0 -33
- package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForEntity.js.map +0 -1
- package/src/code-builder/lib/model/helpers.d.ts +0 -49
- package/src/code-builder/lib/model/helpers.js +0 -407
- package/src/code-builder/lib/model/helpers.js.map +0 -1
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ColumnDecoratorManager = void 0;
|
|
7
|
-
const typescript_1 = __importDefault(require("@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript"));
|
|
8
|
-
const lodash_1 = __importDefault(require("lodash"));
|
|
9
|
-
const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
|
|
10
|
-
class ColumnDecoratorManager {
|
|
11
|
-
constructor(options, fieldNode) {
|
|
12
|
-
this.options = options;
|
|
13
|
-
this.fieldNode = fieldNode;
|
|
14
|
-
}
|
|
15
|
-
isApplyDecorator() {
|
|
16
|
-
return this.options.isColumn;
|
|
17
|
-
}
|
|
18
|
-
decoratorName() {
|
|
19
|
-
return 'Column';
|
|
20
|
-
}
|
|
21
|
-
setFieldNode(fieldNode) {
|
|
22
|
-
this.fieldNode = fieldNode;
|
|
23
|
-
}
|
|
24
|
-
buildDecorator() {
|
|
25
|
-
const fieldSourceLines = [];
|
|
26
|
-
const changes = [];
|
|
27
|
-
//Add the Column decorator to the field
|
|
28
|
-
const columnDecoratorLine = `@${this.decoratorName()}(${this.buildColumnOptionsCode()})`;
|
|
29
|
-
fieldSourceLines.push(columnDecoratorLine);
|
|
30
|
-
changes.push(...this.decoratorImports());
|
|
31
|
-
return {
|
|
32
|
-
filePath: this.options.source.fileName,
|
|
33
|
-
field: this.options.field,
|
|
34
|
-
changes: changes,
|
|
35
|
-
fieldSourceLines: fieldSourceLines,
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
decoratorImports() {
|
|
39
|
-
return [(0, ast_utils_1.insertImport)(this.options.source, this.options.source.fileName, this.decoratorName(), 'typeorm')];
|
|
40
|
-
}
|
|
41
|
-
updateDecorator() {
|
|
42
|
-
if (!this.fieldNode)
|
|
43
|
-
throw new Error('Field node is required for updating the index decorator');
|
|
44
|
-
let newModifiers = [];
|
|
45
|
-
let existingModifiers = this.fieldNode.modifiers;
|
|
46
|
-
// Check if the field has an Column decorator.
|
|
47
|
-
const existingDecorator = this.findDecorator(this.decoratorName(), existingModifiers);
|
|
48
|
-
//Remove the column decorator if the column decorator exists
|
|
49
|
-
//TODO probably this too can be done in a lesser intrusive way i.e update everything instead of removing and adding
|
|
50
|
-
newModifiers = [...this.filterNonDecorators(existingModifiers), ...this.filterOtherDecorators(this.decoratorName(), existingModifiers)];
|
|
51
|
-
//Add the column decorator if column decorator is required
|
|
52
|
-
const changes = [];
|
|
53
|
-
if (this.isApplyDecorator()) {
|
|
54
|
-
newModifiers = [...newModifiers, this.createColumnDecorator(existingDecorator)];
|
|
55
|
-
changes.push(...this.decoratorImports());
|
|
56
|
-
}
|
|
57
|
-
const updatedProperty = typescript_1.default.factory.updatePropertyDeclaration(this.fieldNode, newModifiers, //Replace with new modifiers
|
|
58
|
-
this.fieldNode.name, this.fieldNode.questionToken, this.fieldNode.type, this.fieldNode.initializer);
|
|
59
|
-
return [updatedProperty, changes];
|
|
60
|
-
}
|
|
61
|
-
findDecorator(name, existingModifiers) {
|
|
62
|
-
return existingModifiers ? existingModifiers.filter((m) => (m.kind === typescript_1.default.SyntaxKind.Decorator)).map(m => m).filter(m => this.containsIdentifierName(m, name)).pop() : undefined;
|
|
63
|
-
}
|
|
64
|
-
filterOtherDecorators(name, existingModifiers) {
|
|
65
|
-
return existingModifiers ? existingModifiers.filter((m) => (m.kind === typescript_1.default.SyntaxKind.Decorator)).map(m => m).filter(m => !this.containsIdentifierName(m, name)) : [];
|
|
66
|
-
}
|
|
67
|
-
filterNonDecorators(existingModifiers) {
|
|
68
|
-
return existingModifiers ? existingModifiers.filter((m) => (m.kind !== typescript_1.default.SyntaxKind.Decorator)).map(m => m) : [];
|
|
69
|
-
}
|
|
70
|
-
containsIdentifierName(m, identifierName) {
|
|
71
|
-
const callExpression = m.expression;
|
|
72
|
-
const identifier = callExpression.expression;
|
|
73
|
-
return identifier.text === identifierName;
|
|
74
|
-
}
|
|
75
|
-
createColumnDecorator(existingColumnDecorator) {
|
|
76
|
-
// Capture the existing column decorator options
|
|
77
|
-
let existingColumnDecoratorPropertyAssignments = [];
|
|
78
|
-
if (existingColumnDecorator !== undefined) {
|
|
79
|
-
//Pre-set the column options from the existing column decorator
|
|
80
|
-
const existingCallExpression = existingColumnDecorator.expression;
|
|
81
|
-
// Check if call expression has at least 1 arguments
|
|
82
|
-
if (existingCallExpression.arguments.length > 0) {
|
|
83
|
-
if (!typescript_1.default.isObjectLiteralExpression(existingCallExpression.arguments[0])) {
|
|
84
|
-
throw new Error('Column decorator 1st arguments must be an object literal containing the column options');
|
|
85
|
-
}
|
|
86
|
-
const existingObjectLiteralExpression = existingCallExpression.arguments[0];
|
|
87
|
-
existingColumnDecoratorPropertyAssignments.push(...existingObjectLiteralExpression.properties);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
// Create the new column decorator options as property assignments, if the option is not null
|
|
91
|
-
const columnDecoratorOptions = this.createColumnDecoratorOptions();
|
|
92
|
-
const newPropertyAssignments = Array.from(columnDecoratorOptions.values()).filter(p => p !== null);
|
|
93
|
-
// console.log('newPropertyAssignments', newPropertyAssignments.map(p => JSON.stringify(p.name)).join(', '));
|
|
94
|
-
// Add the other unhandled column decorator options
|
|
95
|
-
const handledColumnDecoratorOptions = Array.from(columnDecoratorOptions.keys());
|
|
96
|
-
//@ts-ignore
|
|
97
|
-
const otherPropertyAssignments = existingColumnDecoratorPropertyAssignments.filter(ps => { var _a; return !handledColumnDecoratorOptions.includes((_a = ps.name) === null || _a === void 0 ? void 0 : _a.escapedText); });
|
|
98
|
-
newPropertyAssignments.push(...otherPropertyAssignments);
|
|
99
|
-
// Re-create the column decorator with the merged column decorator options
|
|
100
|
-
const decoratorIdentifier = typescript_1.default.factory.createIdentifier(this.decoratorName());
|
|
101
|
-
const decoratorOptions = typescript_1.default.factory.createObjectLiteralExpression(newPropertyAssignments);
|
|
102
|
-
const call = typescript_1.default.factory.createCallExpression(decoratorIdentifier, undefined, [decoratorOptions]);
|
|
103
|
-
return typescript_1.default.factory.createDecorator(call);
|
|
104
|
-
}
|
|
105
|
-
createColumnDecoratorOptions() {
|
|
106
|
-
const options = new Map();
|
|
107
|
-
//Set common options
|
|
108
|
-
//TODO Proper types to be used e.g ColumnCommonOptions
|
|
109
|
-
// if (this.field.defaultValue) {
|
|
110
|
-
// options.set('default', this.field.defaultValue);
|
|
111
|
-
// }
|
|
112
|
-
(!lodash_1.default.isEmpty(this.options.columnName)) ? options.set('name', typescript_1.default.factory.createStringLiteral(this.options.columnName)) : options.set('name', null);
|
|
113
|
-
(this.options.type) ? options.set('type', typescript_1.default.factory.createStringLiteral(this.options.type)) : options.set('type', null);
|
|
114
|
-
if (!this.options.required) {
|
|
115
|
-
options.set('nullable', typescript_1.default.factory.createTrue());
|
|
116
|
-
}
|
|
117
|
-
//Set additional options
|
|
118
|
-
this.options.otherOptionExpressions.forEach((value, key) => {
|
|
119
|
-
options.set(key, value);
|
|
120
|
-
});
|
|
121
|
-
return this.optionsToPropertyAssignmentsOrNull(options);
|
|
122
|
-
}
|
|
123
|
-
optionsToPropertyAssignmentsOrNull(options) {
|
|
124
|
-
const decoratorOptions = new Map();
|
|
125
|
-
options.forEach((value, key) => {
|
|
126
|
-
if (value !== null) {
|
|
127
|
-
decoratorOptions.set(key, typescript_1.default.factory.createPropertyAssignment(typescript_1.default.factory.createIdentifier(key), value));
|
|
128
|
-
}
|
|
129
|
-
else {
|
|
130
|
-
decoratorOptions.set(key, null);
|
|
131
|
-
}
|
|
132
|
-
});
|
|
133
|
-
return decoratorOptions;
|
|
134
|
-
}
|
|
135
|
-
buildColumnDecoratorOptions() {
|
|
136
|
-
const options = new Map();
|
|
137
|
-
//Set common options
|
|
138
|
-
//TODO Proper types to be used e.g ColumnCommonOptions
|
|
139
|
-
// if (this.options.field.defaultValue) {
|
|
140
|
-
// options.set('default', this.options.field.defaultValue);
|
|
141
|
-
// }
|
|
142
|
-
if (!lodash_1.default.isEmpty(this.options.columnName)) {
|
|
143
|
-
options.set('name', `${this.options.columnName}`);
|
|
144
|
-
}
|
|
145
|
-
if (!lodash_1.default.isEmpty(this.options.type)) {
|
|
146
|
-
options.set('type', `${this.options.type}`);
|
|
147
|
-
}
|
|
148
|
-
if (!this.options.required) {
|
|
149
|
-
options.set('nullable', true);
|
|
150
|
-
}
|
|
151
|
-
// Set some keys as null, to indicate they are handled i.e they will be removed & recreated, if required
|
|
152
|
-
//Handled keys
|
|
153
|
-
// options.set('length', null) //TODO Can be improved, since handled keys needs to be managed in this decorator. Ideally it should be managed in the corresponding field
|
|
154
|
-
//Set additional options
|
|
155
|
-
this.options.otherOptions.forEach((value, key) => {
|
|
156
|
-
options.set(key, value);
|
|
157
|
-
});
|
|
158
|
-
return options;
|
|
159
|
-
}
|
|
160
|
-
buildColumnOptionsCode() {
|
|
161
|
-
const options = this.buildColumnDecoratorOptions();
|
|
162
|
-
const keys = Array.from(options.keys());
|
|
163
|
-
const optionsString = keys
|
|
164
|
-
.filter((key) => options.get(key) !== null)
|
|
165
|
-
.map((key) => {
|
|
166
|
-
if (typeof options.get(key) === 'string') {
|
|
167
|
-
return `${key}: "${options.get(key)}"`;
|
|
168
|
-
}
|
|
169
|
-
else {
|
|
170
|
-
return `${key}: ${options.get(key)}`;
|
|
171
|
-
}
|
|
172
|
-
})
|
|
173
|
-
.join(', ');
|
|
174
|
-
return `{ ${optionsString} }`;
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
exports.ColumnDecoratorManager = ColumnDecoratorManager;
|
|
178
|
-
//# sourceMappingURL=ColumnDecoratorManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ColumnDecoratorManager.js","sourceRoot":"","sources":["ColumnDecoratorManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import ts, { PropertyDeclaration } from "@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript";
|
|
2
|
-
import { DecoratorManager, PartialAddFieldChange } from "../../FieldManager";
|
|
3
|
-
import { Change } from "@schematics/angular/utility/change";
|
|
4
|
-
interface IndexDecoratorOptions {
|
|
5
|
-
index: boolean;
|
|
6
|
-
source: ts.SourceFile;
|
|
7
|
-
field: any;
|
|
8
|
-
}
|
|
9
|
-
export declare class IndexDecoratorManager implements DecoratorManager {
|
|
10
|
-
options: IndexDecoratorOptions;
|
|
11
|
-
fieldNode?: ts.PropertyDeclaration | undefined;
|
|
12
|
-
constructor(options: IndexDecoratorOptions, fieldNode?: ts.PropertyDeclaration | undefined);
|
|
13
|
-
isApplyDecorator(): boolean;
|
|
14
|
-
decoratorName(): string;
|
|
15
|
-
setFieldNode(fieldNode: ts.PropertyDeclaration): void;
|
|
16
|
-
buildDecorator(): PartialAddFieldChange;
|
|
17
|
-
decoratorImports(): Change[];
|
|
18
|
-
updateDecorator(): [PropertyDeclaration, Change[]];
|
|
19
|
-
private createIndexDecorator;
|
|
20
|
-
private filterOtherDecorators;
|
|
21
|
-
private filterNonDecorators;
|
|
22
|
-
private containsIdentifierName;
|
|
23
|
-
}
|
|
24
|
-
export {};
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.IndexDecoratorManager = void 0;
|
|
7
|
-
const typescript_1 = __importDefault(require("@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript"));
|
|
8
|
-
const FieldManager_1 = require("../../FieldManager");
|
|
9
|
-
const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
|
|
10
|
-
class IndexDecoratorManager {
|
|
11
|
-
constructor(options, fieldNode) {
|
|
12
|
-
this.options = options;
|
|
13
|
-
this.fieldNode = fieldNode;
|
|
14
|
-
}
|
|
15
|
-
isApplyDecorator() {
|
|
16
|
-
return this.options.index && this.options.field.relationType !== FieldManager_1.RelationType.ManyToMany;
|
|
17
|
-
}
|
|
18
|
-
decoratorName() {
|
|
19
|
-
return 'Index';
|
|
20
|
-
}
|
|
21
|
-
setFieldNode(fieldNode) {
|
|
22
|
-
this.fieldNode = fieldNode;
|
|
23
|
-
}
|
|
24
|
-
buildDecorator() {
|
|
25
|
-
const fieldSourceLines = [];
|
|
26
|
-
const changes = [];
|
|
27
|
-
// if (this.field.index) {
|
|
28
|
-
const indexDecoratorLine = `@Index()`;
|
|
29
|
-
fieldSourceLines.push(indexDecoratorLine);
|
|
30
|
-
changes.push(...this.decoratorImports());
|
|
31
|
-
// }
|
|
32
|
-
return {
|
|
33
|
-
filePath: this.options.source.fileName,
|
|
34
|
-
field: this.options.field,
|
|
35
|
-
changes: changes,
|
|
36
|
-
fieldSourceLines: fieldSourceLines,
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
decoratorImports() {
|
|
40
|
-
return [(0, ast_utils_1.insertImport)(this.options.source, this.options.source.fileName, this.decoratorName(), 'typeorm')];
|
|
41
|
-
}
|
|
42
|
-
//Updates the index decorator for the fieldNode based on the options provided
|
|
43
|
-
// @returns the updated property declaration
|
|
44
|
-
updateDecorator() {
|
|
45
|
-
if (!this.fieldNode)
|
|
46
|
-
throw new Error('Field node is required for updating the index decorator');
|
|
47
|
-
let newModifiers = [];
|
|
48
|
-
let existingModifiers = this.fieldNode.modifiers;
|
|
49
|
-
//Remove the Index decorator if the Index decorator exists
|
|
50
|
-
//TODO probably this too can be done in a lesser intrusive way i.e update everything instead of removing and adding
|
|
51
|
-
newModifiers = [...this.filterNonDecorators(existingModifiers), ...this.filterOtherDecorators(this.decoratorName(), existingModifiers)];
|
|
52
|
-
//Add the column decorator if column decorator is required
|
|
53
|
-
const changes = [];
|
|
54
|
-
if (this.isApplyDecorator()) {
|
|
55
|
-
newModifiers = [...newModifiers, this.createIndexDecorator()];
|
|
56
|
-
changes.push(...this.decoratorImports());
|
|
57
|
-
}
|
|
58
|
-
//If index decorator is present & index is required, no need to update the index decorator
|
|
59
|
-
const updatedProperty = typescript_1.default.factory.updatePropertyDeclaration(this.fieldNode, newModifiers, //newModifiers contains the updated index decorator
|
|
60
|
-
this.fieldNode.name, this.fieldNode.questionToken, this.fieldNode.type, this.fieldNode.initializer);
|
|
61
|
-
return [updatedProperty, changes];
|
|
62
|
-
}
|
|
63
|
-
createIndexDecorator() {
|
|
64
|
-
return typescript_1.default.factory.createDecorator(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier('Index'), undefined, []));
|
|
65
|
-
}
|
|
66
|
-
filterOtherDecorators(name, existingModifiers) {
|
|
67
|
-
return existingModifiers ? existingModifiers.filter((m) => (m.kind === typescript_1.default.SyntaxKind.Decorator)).map(m => m).filter(m => !this.containsIdentifierName(m, name)) : [];
|
|
68
|
-
}
|
|
69
|
-
filterNonDecorators(existingModifiers) {
|
|
70
|
-
return existingModifiers ? existingModifiers.filter((m) => (m.kind !== typescript_1.default.SyntaxKind.Decorator)).map(m => m) : [];
|
|
71
|
-
}
|
|
72
|
-
containsIdentifierName(m, identifierName) {
|
|
73
|
-
const callExpression = m.expression;
|
|
74
|
-
const identifier = callExpression.expression;
|
|
75
|
-
return identifier.text === identifierName;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
exports.IndexDecoratorManager = IndexDecoratorManager;
|
|
79
|
-
//# sourceMappingURL=IndexDecoratorManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IndexDecoratorManager.js","sourceRoot":"","sources":["IndexDecoratorManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import ts, { PropertyDeclaration } from "@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript";
|
|
2
|
-
import { Change } from "@schematics/angular/utility/change";
|
|
3
|
-
import { DecoratorManager, PartialAddFieldChange } from "../../FieldManager";
|
|
4
|
-
interface JoinTableDecoratorOptions {
|
|
5
|
-
isManyToManyRelationOwner: boolean;
|
|
6
|
-
source: ts.SourceFile;
|
|
7
|
-
field: any;
|
|
8
|
-
fieldName: string;
|
|
9
|
-
modelName: string;
|
|
10
|
-
}
|
|
11
|
-
export declare class JoinTableDecoratorManager implements DecoratorManager {
|
|
12
|
-
options: JoinTableDecoratorOptions;
|
|
13
|
-
fieldNode?: ts.PropertyDeclaration | undefined;
|
|
14
|
-
constructor(options: JoinTableDecoratorOptions, fieldNode?: ts.PropertyDeclaration | undefined);
|
|
15
|
-
isApplyDecorator(): boolean;
|
|
16
|
-
decoratorName(): string;
|
|
17
|
-
buildDecorator(): PartialAddFieldChange;
|
|
18
|
-
decoratorImports(): Change[];
|
|
19
|
-
setFieldNode(fieldNode: PropertyDeclaration): void;
|
|
20
|
-
updateDecorator(): [PropertyDeclaration, Change[]];
|
|
21
|
-
private createDecorator;
|
|
22
|
-
private createDecoratorArguments;
|
|
23
|
-
private existingDecoratorOptions;
|
|
24
|
-
private findDecorator;
|
|
25
|
-
private filterOtherDecorators;
|
|
26
|
-
private filterNonDecorators;
|
|
27
|
-
private containsIdentifierName;
|
|
28
|
-
}
|
|
29
|
-
export {};
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.JoinTableDecoratorManager = void 0;
|
|
7
|
-
const typescript_1 = __importDefault(require("@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript"));
|
|
8
|
-
const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
|
|
9
|
-
class JoinTableDecoratorManager {
|
|
10
|
-
constructor(options, fieldNode) {
|
|
11
|
-
this.options = options;
|
|
12
|
-
this.fieldNode = fieldNode;
|
|
13
|
-
}
|
|
14
|
-
isApplyDecorator() {
|
|
15
|
-
return this.options.isManyToManyRelationOwner;
|
|
16
|
-
}
|
|
17
|
-
decoratorName() {
|
|
18
|
-
return 'JoinTable';
|
|
19
|
-
}
|
|
20
|
-
buildDecorator() {
|
|
21
|
-
const changes = [];
|
|
22
|
-
const fieldSourceLines = [];
|
|
23
|
-
// Add the many-to-many import
|
|
24
|
-
// const decoratorImport = insertImport(
|
|
25
|
-
// this.options.source,
|
|
26
|
-
// this.options.source.fileName,
|
|
27
|
-
// this.decoratorName(),
|
|
28
|
-
// 'typeorm',
|
|
29
|
-
// );
|
|
30
|
-
// if (decoratorImport) {
|
|
31
|
-
// changes.push(decoratorImport);
|
|
32
|
-
// }
|
|
33
|
-
fieldSourceLines.push(`@${this.decoratorName()}()`);
|
|
34
|
-
changes.push(...this.decoratorImports());
|
|
35
|
-
return {
|
|
36
|
-
filePath: this.options.source.fileName,
|
|
37
|
-
field: this.options.field,
|
|
38
|
-
changes: changes,
|
|
39
|
-
fieldSourceLines: fieldSourceLines,
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
decoratorImports() {
|
|
43
|
-
return [(0, ast_utils_1.insertImport)(this.options.source, this.options.source.fileName, this.decoratorName(), 'typeorm')];
|
|
44
|
-
}
|
|
45
|
-
setFieldNode(fieldNode) {
|
|
46
|
-
this.fieldNode = fieldNode;
|
|
47
|
-
}
|
|
48
|
-
updateDecorator() {
|
|
49
|
-
// Check if the field property declaration exists, if not throw an error
|
|
50
|
-
if (!this.fieldNode)
|
|
51
|
-
throw new Error('Field node is required for updating the one to many decorator');
|
|
52
|
-
let newModifiers = [];
|
|
53
|
-
let existingModifiers = this.fieldNode.modifiers;
|
|
54
|
-
// Check if field has an existing one-to-many relation decorator
|
|
55
|
-
const existingDecorator = this.findDecorator(this.decoratorName(), existingModifiers);
|
|
56
|
-
//Remove the many-to-one decorator if it exists
|
|
57
|
-
//TODO probably this too can be done in a lesser intrusive way i.e update everything instead of removing and adding
|
|
58
|
-
newModifiers = [...this.filterNonDecorators(existingModifiers), ...this.filterOtherDecorators(this.decoratorName(), existingModifiers)];
|
|
59
|
-
//Add the one-to-many decorator if it is required
|
|
60
|
-
const changes = [];
|
|
61
|
-
if (this.isApplyDecorator()) {
|
|
62
|
-
newModifiers = [...newModifiers, this.createDecorator(existingDecorator)];
|
|
63
|
-
changes.push(...this.decoratorImports());
|
|
64
|
-
}
|
|
65
|
-
const updatedProperty = typescript_1.default.factory.updatePropertyDeclaration(this.fieldNode, newModifiers, //Replace with new modifiers
|
|
66
|
-
this.fieldNode.name, this.fieldNode.questionToken, this.fieldNode.type, this.fieldNode.initializer);
|
|
67
|
-
return [updatedProperty, changes];
|
|
68
|
-
}
|
|
69
|
-
createDecorator(existingDecorator) {
|
|
70
|
-
let existingRelationOptions = this.existingDecoratorOptions(existingDecorator);
|
|
71
|
-
// const mergedRelationOptions: ObjectLiteralElementLike[] = this.mergeNewAndExistingDecoratorOptions(existingRelationOptions);
|
|
72
|
-
// Re-create the decorator with the merged decorator options
|
|
73
|
-
const decoratorIdentifier = typescript_1.default.factory.createIdentifier(this.decoratorName());
|
|
74
|
-
const argumentsArray = this.createDecoratorArguments(existingRelationOptions);
|
|
75
|
-
const call = typescript_1.default.factory.createCallExpression(decoratorIdentifier, undefined, argumentsArray);
|
|
76
|
-
return typescript_1.default.factory.createDecorator(call);
|
|
77
|
-
}
|
|
78
|
-
createDecoratorArguments(joinTableOptions) {
|
|
79
|
-
const argumentsArray = [];
|
|
80
|
-
if (joinTableOptions.length > 0) {
|
|
81
|
-
const validationOptionsObjectLiteral = typescript_1.default.factory.createObjectLiteralExpression(joinTableOptions);
|
|
82
|
-
argumentsArray.push(validationOptionsObjectLiteral);
|
|
83
|
-
}
|
|
84
|
-
return argumentsArray;
|
|
85
|
-
}
|
|
86
|
-
existingDecoratorOptions(existingDecorator) {
|
|
87
|
-
let existingDecoratorPropertyAssignments = [];
|
|
88
|
-
if (existingDecorator !== undefined) {
|
|
89
|
-
//Pre-set the relation options from the existing relation decorator
|
|
90
|
-
const existingCallExpression = existingDecorator.expression;
|
|
91
|
-
// Check if call expression has at least 1 arguments
|
|
92
|
-
if (existingCallExpression.arguments.length > 0) { //Because we are interested in the 1st argument, we check for length > 0
|
|
93
|
-
if (!typescript_1.default.isObjectLiteralExpression(existingCallExpression.arguments[0])) {
|
|
94
|
-
throw new Error('JoinTable decorator 1st argument must be an object literal containing the joinTable options');
|
|
95
|
-
}
|
|
96
|
-
const existingObjectLiteralExpression = existingCallExpression.arguments[0];
|
|
97
|
-
existingDecoratorPropertyAssignments.push(...existingObjectLiteralExpression.properties);
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
return existingDecoratorPropertyAssignments;
|
|
101
|
-
}
|
|
102
|
-
findDecorator(name, existingModifiers) {
|
|
103
|
-
return existingModifiers ? existingModifiers.filter((m) => (m.kind === typescript_1.default.SyntaxKind.Decorator)).map(m => m).filter(m => this.containsIdentifierName(m, name)).pop() : undefined;
|
|
104
|
-
}
|
|
105
|
-
filterOtherDecorators(name, existingModifiers) {
|
|
106
|
-
return existingModifiers ? existingModifiers.filter((m) => (m.kind === typescript_1.default.SyntaxKind.Decorator)).map(m => m).filter(m => !this.containsIdentifierName(m, name)) : [];
|
|
107
|
-
}
|
|
108
|
-
filterNonDecorators(existingModifiers) {
|
|
109
|
-
return existingModifiers ? existingModifiers.filter((m) => (m.kind !== typescript_1.default.SyntaxKind.Decorator)).map(m => m) : [];
|
|
110
|
-
}
|
|
111
|
-
containsIdentifierName(m, identifierName) {
|
|
112
|
-
const callExpression = m.expression;
|
|
113
|
-
const identifier = callExpression.expression;
|
|
114
|
-
return identifier.text === identifierName;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
exports.JoinTableDecoratorManager = JoinTableDecoratorManager;
|
|
118
|
-
//# sourceMappingURL=JoinTableDecoratorManager.js.map
|
package/src/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"JoinTableDecoratorManager.js","sourceRoot":"","sources":["JoinTableDecoratorManager.ts"],"names":[],"mappings":"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"}
|
package/src/code-builder/lib/field/decorator-managers/entity/ManyToManyDecoratorManager.d.ts
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import ts, { PropertyDeclaration } from "@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript";
|
|
2
|
-
import { Change } from "@schematics/angular/utility/change";
|
|
3
|
-
import { DecoratorManager, DeleteType, PartialAddFieldChange } from "../../FieldManager";
|
|
4
|
-
interface ManyToManyDecoratorOptions {
|
|
5
|
-
isManyToMany: boolean;
|
|
6
|
-
relationModelName: string;
|
|
7
|
-
relationInverseFieldName: string;
|
|
8
|
-
relationCascade: DeleteType;
|
|
9
|
-
owner: boolean;
|
|
10
|
-
source: ts.SourceFile;
|
|
11
|
-
field: any;
|
|
12
|
-
fieldName: string;
|
|
13
|
-
modelName: string;
|
|
14
|
-
}
|
|
15
|
-
export declare class ManyToManyDecoratorManager implements DecoratorManager {
|
|
16
|
-
options: ManyToManyDecoratorOptions;
|
|
17
|
-
fieldNode?: ts.PropertyDeclaration | undefined;
|
|
18
|
-
constructor(options: ManyToManyDecoratorOptions, fieldNode?: ts.PropertyDeclaration | undefined);
|
|
19
|
-
isApplyDecorator(): boolean;
|
|
20
|
-
decoratorName(): string;
|
|
21
|
-
buildDecorator(): PartialAddFieldChange;
|
|
22
|
-
setFieldNode(fieldNode: PropertyDeclaration): void;
|
|
23
|
-
decoratorImports(): Change[];
|
|
24
|
-
updateDecorator(): [PropertyDeclaration, Change[]];
|
|
25
|
-
private buildRelationOptionsCode;
|
|
26
|
-
private createRelationDecorator;
|
|
27
|
-
private mergeNewAndExistingDecoratorOptions;
|
|
28
|
-
private createDecoratorArguments;
|
|
29
|
-
private existingDecoratorOptions;
|
|
30
|
-
private createRelationDecoratorOptions;
|
|
31
|
-
private optionsToPropertyAssignmentsOrNull;
|
|
32
|
-
private findDecorator;
|
|
33
|
-
private filterOtherDecorators;
|
|
34
|
-
private filterNonDecorators;
|
|
35
|
-
private containsIdentifierName;
|
|
36
|
-
}
|
|
37
|
-
export {};
|