Repository: swc-project/swc (rust)

Issue:
Does not add imports to `findLast` and `findLastIndex` core-js polyfills when `{ env: { mode: 'usage' }}`
### Describe the bug

When using `{ env: { mode: 'usage' }}`, swc fails to add imports to `findLast` and `findLastIndex` core-js polyfills.

I've tried multiple options, to see if I am missing something but managed to get them there only by explicitly using the `include` option.

Thanks in advance for taking a look 👍.


### Input code

```typescript
const array = [1, 2, 3];
array.findLastIndex();
array.findLast();
```


### Config

```json
{
  "jsc": {
    "parser": {
      "syntax": "ecmascript",
      "jsx": false
    }
  },
  "module": {
    "type": "es6"
  },
  "isModule": true,
  "env": {
    "targets": "chrome >=63",
    "mode": "usage",
    "coreJs": "3.29"
  }
}
```


### Playground link

https://play.swc.rs/?version=1.3.37&code=H4sIAAAAAAAAA0vOzysuUUgsKkqsVLBViDbUUTDSUTCOteYCC%2BmlZeal%2BCQWl3jmpaRWaGiiCwNFAJfu0s1BAAAA&config=H4sIAAAAAAAAAy3M0QrCMAwF0F%2BRPBcfHAwc6AcIfkSo1zlZ15Kk4hj9d9vhW3LvSTZ6q6dho8SikDbpuhh%2FaSD4wOplSkausho9eVaU4ijER57RtK0JzWpPNZ%2F0%2Fm9MMhxh%2BeyIZYRpdf4lMeBwvfQd7W%2FacVYeUVcfBbemuuPpTKX8AGxXDAedAAAA

### Expected behavior

```js
import "core-js/modules/esnext.array.find-last-index.js";
import "core-js/modules/esnext.array.find-last.js";
const array = [
    1,
    2,
    3
];
array.findLastIndex();
array.findLast();
```

### Actual behavior

Actual output:

```js
const array = [
    1,
    2,
    3
];
array.findLastIndex();
array.findLast();
```

-> Polyfills are missing.

### Version

1.3.37

### Additional context

_No response_

Pull request description:
fix(es/preset-env): move findLast and findLastIndex to finished proposals
<!-- Note: CI script will automatically rebase your PR so please do not rebase unless required -->

<!-- Thanks for submitting a pull request! Please provide enough information so that others can review your pull request. -->

**Description:** Fix #7001

<!-- Explain the **motivation** for making this change. What existing problem does the pull request solve? -->

**BREAKING CHANGE:** No 

<!--
If this PR introduces a breaking change, it must contain a notice for it to be included in the CHANGELOG. Add description or remove entirely if not breaking.

You may need to update `MIGRATION.md` for the breaking changes.
-->

**Related issue (if exists):** #3970


Patch:
diff --git a/crates/swc_ecma_preset_env/src/corejs3/data.rs b/crates/swc_ecma_preset_env/src/corejs3/data.rs
index 61582b04de..2204afe3f4 100644
--- a/crates/swc_ecma_preset_env/src/corejs3/data.rs
+++ b/crates/swc_ecma_preset_env/src/corejs3/data.rs
@@ -413,7 +413,8 @@ pub static INSTANCE_PROPERTIES: DataMap<&[&str]> = data_map!(Map {
     finally: PROMISE_FINALLY,
     find: FIND,
     findIndex: ["es.array.find-index"],
-    findLast: "esnext.array.find-last",
+    findLast: ["es.array.find-last"],
+    findLastIndex: ["es.array.find-last-index"],
     fixed: ["es.string.fixed"],
     flags: ["es.regexp.flags"],
     flat: ["es.array.flat", "es.array.unscopables.flat"],


Test patch:
diff --git a/crates/swc_ecma_preset_env/tests/fixtures/corejs3/usage-array-find-last/input.mjs b/crates/swc_ecma_preset_env/tests/fixtures/corejs3/usage-array-find-last/input.mjs
new file mode 100644
index 0000000000..15bfebaed4
--- /dev/null
+++ b/crates/swc_ecma_preset_env/tests/fixtures/corejs3/usage-array-find-last/input.mjs
@@ -0,0 +1,3 @@
+const array = [1, 2, 3];
+array.findLastIndex();
+array.findLast();
diff --git a/crates/swc_ecma_preset_env/tests/fixtures/corejs3/usage-array-find-last/options.json b/crates/swc_ecma_preset_env/tests/fixtures/corejs3/usage-array-find-last/options.json
new file mode 100644
index 0000000000..04c68e135e
--- /dev/null
+++ b/crates/swc_ecma_preset_env/tests/fixtures/corejs3/usage-array-find-last/options.json
@@ -0,0 +1,12 @@
+{
+  "presets": [
+    [
+      "../../../../lib",
+      {
+        "useBuiltIns": "usage",
+        "corejs": "3.29",
+        "modules": false
+      }
+    ]
+  ]
+}
diff --git a/crates/swc_ecma_preset_env/tests/fixtures/corejs3/usage-array-find-last/output.mjs b/crates/swc_ecma_preset_env/tests/fixtures/corejs3/usage-array-find-last/output.mjs
new file mode 100644
index 0000000000..e83cdf303e
--- /dev/null
+++ b/crates/swc_ecma_preset_env/tests/fixtures/corejs3/usage-array-find-last/output.mjs
@@ -0,0 +1,9 @@
+import "core-js/modules/es.array.find-last-index.js";
+import "core-js/modules/es.array.find-last.js";
+var array = [
+    1,
+    2,
+    3
+];
+array.findLastIndex();
+array.findLast();