acl-services / acl-services/paprika

The polyfill functions in `@paprika/helpers` should be in a separated package as a peer dependency

Aberta
#937 8 comentários 0 reações 0 responsáveis Ver no GitHub
Editor's Choice Medium Priority →
Linguagem predominante
JavaScript
Estrelas
54
Forks
10
Merge médio
1d 12h
PRs com merge (30d)
6

Descrição

# Bug Report

E.g `elementScroll.js` is the polyfill for `Element.scroll(), Element.scrollTo(), Element.scrollBy()`, but it's very common that a consuming app has paprika components in different ages, most of them will have different versions of `@paprika/helpers` package, which means we'll have multiple versions of `elementScroll.js` .

However, each polyfill is an IIFE, the later executed `elementScroll.js` will override the previous one. `Element.scroll(), Element.scrollTo(), Element.scrollBy()` will keep changing until everything loaded and executed. It will be very hard to debug when needed.

## Expected behavior

Polyfills should be peer dependencies, or maybe because IE 11 will be unsupported soon, we can remove them?

## Current behavior

Multiple versions of polyfills in consuming apps.

## Screenshots / Gifs / Codepens
*Include media to help illustrate the bug. Gifs help a lot!*

## Additional context

cc @AndreyChernykh

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Comece com elementScroll.js em @paprika/helpers e seus metadados de pacote para verificar o empacotamento atual do polyfill. Inspecione package.json em busca de pacotes @paprika que consumam @paprika/helpers para ver onde o código do polyfill é incluído e se ele pode ser movido para uma peer dependency ou removido. Nenhum teste é indicado; valide carregando uma aplicação consumidora com várias versões dos pacotes e confirmando que IIFEs posteriores não substituem mais o comportamento do polyfill anterior. Está concluído quando uma única implementação consistente do polyfill estiver em uso entre as versões.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
javascript, react
Domínio
frontend
Tipo de issue
Bug
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
38/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.