acl-services / acl-services/paprika

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

未關閉
#937 8 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
Editor's Choice Medium Priority →
主要語言
JavaScript
星號
54
分支
10
平均合併
1 天 12 小時
30 天內合併 PR
6

描述

# 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

貢獻指南

這個儲存庫沒有索引到貢獻指南

研究方向

Start with elementScroll.js in @paprika/helpers and its package metadata to verify current polyfill packaging. Inspect package.json for @paprika packages that consume @paprika/helpers to see where polyfill code is pulled in and whether it can be moved to a peer dependency or removed. No tests are named; validate by loading a consumer app with multiple package versions and confirming later IIFEs no longer override earlier polyfill behavior. Done when one consistent polyfill implementation is in use across versions.

由索引模型根據 Issue 內容生成。

評估

技術堆疊
javascript, react
領域
frontend
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
38/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。