Android d.ts generator fails to create typings for nested data class
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 38/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- android, kotlin, typescript
Direção de pesquisa
Comece pela declaração da função Kotlin vinculada na reprodução e compare sua saída com os typings gerados mostrados na issue. Rastreie o tratamento de data classes aninhadas pelo Android d.ts Generator e verifique a conclusão regenerando os typings sem a chave ausente do módulo.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):
- CLI: 8.5
- Cross-platform modules: 8.5.0
- Android Runtime: 8.5.0
- Android d.ts Generator : 3.0.0
- iOS Runtime (if applicable): 8.5.1
- Plugin(s):
Describe the bug
It seems Android d.ts generator has trouble generating types for data classes declared inside functions.
Generator log output:
Android d.ts Generator Version : 3.0.0
ignoring definitions in missing dependency: android.text.TextWatcher
ignoring definitions in missing dependency: android.view.View$OnFocusChangeListener
Generation of definitions took 712ms.
Typings have been generated in the following directory: ./typings
To Reproduce
This is the kotlin function with class declaration: https://github.com/RedMadRobot/input-mask-android/blob/eee78324eb4cdb4faab3248ef646d5750507b598/inputmask/src/main/kotlin/com/redmadrobot/inputmask/MaskedTextChangedListener.kt#L294
These are the typings generated, you will notice a brace is missing on module pickMask:
export module MaskedTextChangedListener {
export module pickMask {
export module ValueListener {
export class MaskAffinity {
public static class: java.lang.Class<com.redmadrobot.inputmask.MaskedTextChangedListener.pickMask.MaskAffinity>;
public component1(): com.redmadrobot.inputmask.helper.Mask;
public getAffinity(): number;
public component2(): number;
public copy(param0: com.redmadrobot.inputmask.helper.Mask, param1: number): com.redmadrobot.inputmask.MaskedTextChangedListener.pickMask.MaskAffinity;
public hashCode(): number;
public equals(param0: any): boolean;
public getMask(): com.redmadrobot.inputmask.helper.Mask;
public toString(): string;
public constructor(param0: com.redmadrobot.inputmask.helper.Mask, param1: number);
}
}
}
Expected behavior
Typings should be generated without problems.
- Linguagem predominante
- C++
- Estrelas
- 563
- Forks
- 144
- Merge médio
- 10h 46min
- PRs com merge (30d)
- 14
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de NativeScript/android
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 38/100
NativeScript/android#2039 · 1 comentário ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 48/100
NativeScript/android#2024 ·
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 20/100
NativeScript/android#2020 ·
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 42/100
NativeScript/android#2019 ·
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 55/100
NativeScript/android#1986 ·
Todas as issues de NativeScript/android
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
flutter-webrtc/flutter-webrtc#2206 ·
-
litertlm-android AAR ships no consumer ProGuard rules → "mid == null" SIGABRT in minified apps Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
google-ai-edge/LiteRT-LM#3739 ·
-
Component: GLib
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
brave/brave-browser#59300 ·
-
Mute ydb/tests/functional/dstool/test_canonical_requests.py.Test.test_group_take_snapshot in main Abertaai_reviewed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
ydb-platform/ydb#53974 · 3 comentários ·