Commit Graph

381 Commits

Author SHA1 Message Date
Homyee King 25c7584326
feat: dynamic API (#6831)
* chore: save

* feat: basic dynamic

* feat: export from ice/runtime

* test: with-dynamic

* test(with-dynamic): name export

* feat: use useMounted

* chore: cmt

* chore: up lock file

* chore: use universal-env

* fix: ci

* Revert "chore: use universal-env"

This reverts commit 98f5dff99f.

* chore: optimize logic
2024-03-20 14:44:21 +08:00
ClarkXia d0a748f6d4
Fix: ignore basename in single route mode when route do not match (#6833)
* fix: compat with the route path did not match when single route mode

* fix: route do not match

* Update singleRouter.tsx
2024-03-19 14:58:18 +08:00
ClarkXia 0d3cfd5929
Refactor: use the same compiler when build data-loader (#6804)
* fix: update rspack version

* feat: compile data loader

* chore: dependencies

* feat: refactor build data-loader

* chore: changelog

* fix: add error handle for data loader compiler
2024-03-19 14:04:12 +08:00
ClarkXia ba811d72d3
Feat: support props for KeepAliveOutlet (#6819)
* feat: support props for KeepAliveOutlet

* fix: lint warning

* fix: lint
2024-03-11 16:06:14 +08:00
ClarkXia e78623230f
fix: single router is not work when route path is customized (#6810) 2024-02-26 12:13:02 +08:00
ClarkXia d4f01b8f6a
chore: update versions (#6794) 2024-02-26 10:34:50 +08:00
ClarkXia 591a9abe96
Feat: support keepalive without experimental version of react (#6768)
* feat: support keepalive without experimental version of react

* feat: add keep alive example

* fix: optimize code
2024-02-20 11:22:19 +08:00
ClarkXia 57ecf19668
fix: compatible when undefined basename (#6780) 2024-02-01 17:10:14 +08:00
ClarkXia 09d95d2dc7
chore: update versions (#6757) 2024-02-01 10:43:06 +08:00
ClarkXia fd44784155
Feat: update react-router for new feature (#6764)
* feat: update react-router for new feature

* feat: export new api of react-router

* fix: merge error
2024-01-31 16:40:43 +08:00
ClarkXia b3c53b8750
fix: export losing ts type (#6772) 2024-01-30 17:08:28 +08:00
ClarkXia 8d57a24aec
Feat: enhance single router mode without react-router (#6761)
* feat: enhance single router mode without react-router

* fix: test case
2024-01-25 13:21:45 +08:00
ClarkXia b85feaae6a
fix: do not log warning message when use router api (#6731) 2024-01-24 20:34:43 +08:00
ClarkXia c1aab10aab
fix: avoid unexpected slash in route path (#6760) 2024-01-24 14:26:55 +08:00
ClarkXia 38f7aa08c7
chore: update versions (#6740) 2024-01-18 14:44:38 +08:00
ClarkXia 3727f80d8f
Fix: pass the correct request context to data loader (#6747)
* fix: pass the correct request context to data loader

* chore: changelog

* chore: update routes.tsx
2024-01-18 11:04:15 +08:00
ClarkXia 2e4449f727
fix: compatible with API matchRoutes when basename is not provided (#6728) 2024-01-04 17:27:41 +08:00
ClarkXia b446396b99
chore: update versions (#6690) 2024-01-04 13:57:53 +08:00
luhc228 23811c8201
fix: unstable_Offscreen to unstable_Activity (#6694)
* fix: OffScreen to Activity

* chore: changeset
2023-12-18 14:24:03 +08:00
ClarkXia 951ca6c5fa
chore: update versions (#6655) 2023-11-30 14:04:04 +08:00
染陌同学 f1ee695372
feat: support preRender (#6675)
* feat: support preRender

* feat: Pip after onAllReady when pre render SSR

* chore: revert onAllReady callback
2023-11-29 19:23:07 -08:00
染陌同学 b8a6f9b8b8
feat: support pre render ssr (#6659)
* feat: support pre render ssr

* chore: modify global to window

* chore: deal with lint

* chore: add type

* chore: remove console

* feat: get assets

* chore: modify concat

* chore: add changeset

* fix: fix lint warning
2023-11-22 23:19:15 -08:00
染陌同学 5d85418890
chore: remove switch of firstchunk (#6638)
* chore: remove switch of firstchunk

* chore: add changeset

* feat: add export and modify example
2023-11-16 01:39:09 -08:00
染陌同学 81849becf8
feat: support first chunk cache (#6607)
* feat: support first chunk cache

* chore: remove cacheFirstChunk

* chore: modify fcc comment

* feat: add FirstChunkCache function

* feat: add first chunk demo

* chore: modify example

* chore: update lock

* chore: update package
2023-10-30 01:21:49 -07:00
ClarkXia f488037c47
chore: update versions (#6602) 2023-10-23 14:47:47 +08:00
ClarkXia 899c4740b9
feat: support options when call document dataLoader (#6593) 2023-10-23 14:26:26 +08:00
ClarkXia a393ae95c4
chore: update versions (#6589) 2023-10-17 17:11:43 +08:00
ClarkXia f144dd6348
fix: compatible with tag.parentNode is null when update routes config (#6588) 2023-10-17 16:27:43 +08:00
ClarkXia c6386d9929
chore: update versions (#6549) 2023-10-12 11:36:20 +08:00
ClarkXia 50efd1ee95
fix: export createElement for react in @ice/runtime (#6562)
* fix: export createElement for react

* fix: modify import source

* fix: dev server runner
2023-10-11 13:40:07 +08:00
水澜 df854102c9
fix: query info in fc (#6572)
* fix: compatible with query parsing errors caused by ctx.req.url  error in the fc environment

* chore: add changelog
2023-10-11 09:55:26 +08:00
ClarkXia 4d256e3063
fix: update route config when dataLoader is not defined (#6552)
* fix: update route config when dataLoader is not defined

* chore: test case
2023-09-27 13:56:36 +08:00
染陌同学 82702258c4
feat: compat no document (#6536)
* feat: compat no document

* chore: modify if

* chore: Document is not requied
2023-09-18 23:14:21 -07:00
ClarkXia fbeaf932cb
chore: update versions (#6509) 2023-09-14 10:58:37 +08:00
luhc228 b8b1d5e41f
fix: source map url in prod files but the sourceMap files not published (#6511)
* fix: source map url in prod files

* chore: changeset
2023-09-06 10:09:59 +08:00
ClarkXia 68f19eaeab
fix: unnecessary to import runtime module and routes when csr (#6507)
* fix: unnecessary to import runtime module and routes when csr

* fix: optimize code
2023-09-04 11:29:51 +08:00
ClarkXia 9dec0097b5
chore: update versions (#6487) 2023-08-31 15:25:26 +08:00
ClarkXia 69e68633ff
feat: support API useDocumentData (#6408)
* feat: support API useDocumentData

* refactor: make document data unstable

* refactor: document data loader

* chore: lint

* chore: lint

* chore: lint

---------

Co-authored-by: ZeroLing <zhuoling.lcl@alibaba-inc.com>
2023-08-31 10:12:45 +08:00
ClarkXia 477d14cc66
fix: mark polyfill signal as es module (#6500) 2023-08-30 18:52:29 +08:00
ZeroLing 99c0dd26e8
Hotfix/sourcemap pref (#6490)
* fix: sourcemap perf

* chore: comments prettier
2023-08-25 16:17:50 +08:00
Homyee King c715742cf1
fix(jsx-plus): transform w/ parent is a <></> (#6418)
* fix(jsx-plus): transform w/ parent is a <></>

* feat: up babel-plugin-transform-jsx-condition

* chore: code style

* fix: lock file

* fix(runtime): type error

* fix(runtime): type err

* fix(i18n): up swc-helper

* chore: up lock

* chore: use next lock

* fix: lock file

* fix: ci
2023-08-25 13:26:05 +08:00
ClarkXia d4904e9269
fix: runtime should compat with old browsers (#6478)
* fix: runtime should compat with old browsers

* fix: optimize code

* fix: lint

* chore: optimize code

* chore: optimize code
2023-08-24 12:06:56 +08:00
ClarkXia 47ba84d3cf
fix: typo of specifier for app data loader (#6480) 2023-08-23 15:13:18 +08:00
ClarkXia 8ef8384696
chore: update versions (#6415) 2023-08-03 14:45:10 +08:00
ClarkXia 67eae5c1ac
feat: support app config of runApp (#6398) 2023-08-02 17:04:50 +08:00
ClarkXia 11dd752b13
fix: do not mutate data return by useSuspenseData when csr (#6434)
* fix: do not mutate data return by useSuspenseData  when csr

* fix: optimize code

* chore: lint warning

* chore: optimize code
2023-08-02 12:22:36 +08:00
ClarkXia d33f3e652a
feat: report detail recoverable error (#6412)
* feat: report detail recoverable error

* chore: changelog

* fix: optimize code

* Update runClientApp.tsx
2023-07-25 17:12:10 +08:00
ClarkXia a96af97bd1
fix: render twice when navigate (#6400) 2023-07-25 16:37:07 +08:00
ZeroLing e9c00737d0
fix: unnecessary escape character (#6411) 2023-07-24 02:38:21 -07:00
ClarkXia 9878e74079
chore: update versions (#6387) 2023-07-20 11:52:07 +08:00
ClarkXia b691b9e96c
feat: support remove router even if route count is greater than 1 (#6382)
* feat: support remove router even if route count is greater than 1

* fix: add test case

* Update createService.ts

* Update createService.ts
2023-07-18 15:20:26 +08:00
ClarkXia 76ef029d0c
chore: update versions (#6368) 2023-07-06 16:41:48 +08:00
ClarkXia 29ad1b5242
fix: add warning log for mutate suspense data directly (#6351) 2023-07-05 14:30:16 +08:00
ClarkXia 45fbf7d5d7
chore: update versions (#6300) 2023-06-16 10:07:54 +08:00
ClarkXia 9d50f5fcdc
fix: deprecated warning for use app context form @ice/runtime (#6325)
* fix: deprecated warning for use app context form @ice/runtime

* fix: test case
2023-06-14 19:03:08 +08:00
染陌同学 9eec33ad21
feat: support weex start sourcemap (#6315)
* feat: support weex start sourcemap

* chore: add changeset
2023-06-14 11:12:52 +08:00
ClarkXia c4f625a22e
fix: single router optimization (#6310)
* fix: optimize single router

* chore: changelog

* fix: test case

* fix: optimize code
2023-06-13 11:23:40 +08:00
水澜 137d6b1c99
fix: server dataLoader error (#6316)
* fix: server error

* chore: add changelog

* fix: fallback should be optional

* chore: add changelog
2023-06-13 11:23:18 +08:00
ClarkXia c68c5da305
fix: replace history methods by router navigate for backwards compatibility (#6317) 2023-06-12 16:35:53 +08:00
Lei Ma effe79860c
fix(runtime): when SSR client send extra useless requests (fix #6306) (#6307)
detail: SSR compile time data field 'loaderData' not match runtime 'routesData'
2023-06-07 16:51:09 +08:00
ClarkXia 87dd2a9434 Merge branch 'release/next' of github.com:alibaba/ice into release/next 2023-06-07 14:54:55 +08:00
ClarkXia 234245e1bd
chore: update versions (#6305) 2023-06-07 13:35:14 +08:00
ClarkXia ed4ed7ee7a
hotfix: auto polyfill for abortcontroller (#6301)
* fix: auto polyfill for abortcontroller

* fix: polyfill

* feat: changelog

* fix: lint

* fix: optimize code

* fix: signal
2023-06-07 11:26:01 +08:00
luhc228 af0a6d7ad3
fix: route paths are not match with hash (#6304)
* fix: bump react-router version to fix route path not match with location hash

* chore: changeset
2023-06-07 11:07:41 +08:00
水澜 474e19356f
feat: use scripts (#6238)
* feat: build for production

* feat: use scripts

* revert: production config

* feat: use render mode

* test: use scripts

* fix: export

* fix: exports

* fix: lint

* revert: lock

* feat: export useAppContext

* fix: type

* fix: type

* refactor: hooks name

* fix: type

* refactor: remove useRenderMode

* refactor: remove useRenderMode

* refactor: function name

* fix: export app config

* refactor: app context

* chore: add changelog

* chore: remove demo code
2023-06-05 16:01:11 +08:00
luhc228 f839c67d7a
fix: load route module error when only has one router (#6297)
* fix: loadRouteModule error when only has one router

* chore: changeset
2023-06-05 14:01:16 +08:00
ClarkXia 45bb4620c4
chore: update versions (#6276) 2023-05-31 15:41:55 +08:00
水澜 51411c4e67
feat: onShellReady (#6285)
* feat: onShellReady

* revert: version

* chore: add chagnelog

* revert: version

* revert: version

* feat: hooks for render

* fix: type

* refactor: stream options
2023-05-31 14:31:28 +08:00
ClarkXia 62a26e38f3
fix: add sideEffects config for polyfills (#6282) 2023-05-30 13:50:42 +08:00
水澜 d1df9ffa4c
fix: ssr error handle (#6278)
* fix: ssr error handle

* chore: add changelog
2023-05-29 14:25:06 +08:00
ClarkXia 71f32f9c85
fix: add default polyfill for signal (#6273)
* fix: add default polyfill for signal

* chore: changelog

* chore: lint
2023-05-25 19:04:03 +08:00
ClarkXia 542d86c75a
chore: update versions (#6250)
* chore: update versions

* Update CHANGELOG.md
2023-05-23 16:04:53 +08:00
水澜 6e639dfe0c
fix: use data (#6254)
* fix: use data

* fix: test

* chore: changeset

* fix: test

* chore: update lock
2023-05-19 11:08:25 +08:00
ClarkXia 989e250104
fix: compatible with hmr when data get undefined (#6259) 2023-05-19 10:02:10 +08:00
ClarkXia ab139accf0
fix: use api history to navigate (#6251)
* fix: use api history to navigate

* fix: params
2023-05-18 15:06:08 +08:00
染陌同学 f24b045de9
Feat/support sourcemap (#6158)
* feat: add generateSourceMap

* feat: generate souce map

* chore: add changeset

* feat: add data-sourcemap

* feat: add with-entry-type example

* feat: add sourcemap info

* fix: modify toJson to toString

* chore: rename generate sourcemap

* feat: modify line of child map

* feat: add base line

* chore: modify BASE_COLUMN

* chore: modify pnpm lock

* feat: data-sourcemap should be delete

* chore: update lock

* chore: add changeset

* chore: modify lock

* chore: remove app worker and data loader

* chore: if sourceMapFileList is empty, return empty string

* feat: support sourcemap meta

* feat: dealwith style

* feat: add prependCode

* chore: modify package

* chore: modify if
2023-05-17 20:01:34 -07:00
ClarkXia 8176bce92e
chore: add version check (#6240) 2023-05-16 18:15:09 +08:00
ClarkXia d173faeef4
fix: changelog (#6244) 2023-05-16 17:42:51 +08:00
luhc228 076a64fc2a
fix: basename not prepend (#6241)
* fix: basename not prepend

* fix: type

* fix: type

* fix: this bind
2023-05-16 17:24:22 +08:00
染陌同学 a878225f59
fix: fix dataLoader is sent repeatedly in PHA (#6062)
* fix: fix dataLoader is sent repeatedly in PHA

* chore: add changeset

* chore: add default wrapper for entry clinet

* feat: add init function to dataLoaderWrapper

* chore: modify number

* feat: modify decorator

* chore: modify decorator

* chore: add no unused vars
2023-05-16 02:10:01 -07:00
ClarkXia 68a95ab8c6
chore: update versions (#6147) 2023-05-16 16:06:21 +08:00
ClarkXia 9c801f6241
fix: bump version of react-router (#6223)
* fix: bump version of react-router

* fix: property of errorElement
2023-05-15 11:35:41 +08:00
ClarkXia d927acb577 Merge branch 'master' into release/next 2023-05-10 14:34:55 +08:00
ClarkXia c9766245d1
fix: test case after merge (#6224) 2023-05-10 14:19:30 +08:00
ClarkXia 5db5b662ec
fix: use import.meta.renderer for client judgement (#6222)
* fix: use import.meta.renderer for client judgement

* chore: changelog
2023-05-10 14:13:00 +08:00
ClarkXia a8e1c971d9
hotfix: parsing url path without using URL (#6225)
* fix: parsing url path without using URL

* fix: rule
2023-05-09 17:34:46 +08:00
ClarkXia 07687cc157 Merge branch 'master' into release/next 2023-05-09 15:34:11 +08:00
ClarkXia d77e216f3a
chore: update versions (#6202) 2023-05-09 14:20:53 +08:00
ZeroLing bb07fd9198
Fix/parse path (#6214)
* fix: parsePath to parseUrl

* test: add test for full url

* chore: add changeset
2023-05-06 05:49:07 -07:00
逆葵 39b66b27fb fix: lint warning 2023-04-26 14:51:38 +08:00
ClarkXia 753845c321
chore: update versions (#6193) 2023-04-25 16:21:41 +08:00
ClarkXia cd7c6c72be
fix: encode route path to escape xss (#6191) 2023-04-25 16:00:19 +08:00
逆葵 c7ec3a43a8 Merge branch 'release/next' into feat/miniapp-native-events 2023-04-25 15:25:10 +08:00
ClarkXia a164ec0d10
fix: coerce beta version into semver (#6185) 2023-04-25 11:37:18 +08:00
水澜 f56497f694
feat: async data loader (#6137)
* chore: refactor unfinished

* feat: support create router

* refactor: render mode

* fix: code splitting false

* feat: add location for icestark

* chore: remove console

* test: examples

* fix: dataloader is undefined

* fix: test

* fix: test case

* fix: test case

* fix: types

* fix: test case

* fix: lock

* feat: async data loader

* fix: update lock

* fix: hydration

* fix: router

* fix: router

* chore: log

* fix: hmr

* fix: test

* fix: test

* feat: await

* fix: await component

* fix: lint

* refactor: type

* fix: type

* fix: app data loader

* fix: test

* fix: test

* test: async data

* test: async data

* docs: async data loader

* fix: lint

* refactor: loader config

* fix: test

* fix: compat with old useage

---------

Co-authored-by: ClarkXia <xiawenwu41@gmail.com>
2023-04-25 10:47:40 +08:00
逆葵 c59b5f4c9e Merge branch 'release/next' into feat/miniapp-native-events 2023-04-24 18:05:57 +08:00
luhc228 1c3d3fec6c
feat: i18n plugin (#6149)
* feat: antd5 example with i18n

* feat: fusion example with i18n

* feat: init plugin-i18n

* feat: init i18n example

* chore: lock

* feat: add language selector

* feat: i18n route

* feat: getAllLocales and getDefaultLocale API

* fix: ssr render error

* feat: support auto redirect

* fix: redirect without url param

* feat: support add response handler

* chore: lock

* feat: support blockCookie option

* fix: route test

* fix: ssg error

* fix: i18n response

* feat: add server example

* chore: add basename

* chore: add headers

* feat: i18n docs

* fix: i18n plugin

* feat: enhance disable cookie

* docs: update disabledCookie documentation

* chore: update desc

* fix: param not defined

* fix: generate routes.ts

* fix: remove todo

* test: i18n

* test: i18n

* fix: lint warning

* fix: addDefineRoutesFunc to addRoutesDefinition

* chore: i18n plugin version

* chore: changelog

* feat: use modifyRenderData instead of runtimeOptions.raw

* chore: update changelog

* chore: rename param

* fix: comment

* feat: use createLogger instead of consola directly

* feat: change customRuntimeOptions type from string to object

* refactor: route id

* chore: remove unused console.log

* chore: add comment

* fix: win32 test fail

* chore: changelog
2023-04-24 10:18:53 +08:00
ClarkXia 9de09ee8da
feat: support version check between @ice/app and @ice/runtime (#6151)
* feat: support version check between @ice/app and @ice/runtime

* fix: update lock
2023-04-14 11:04:53 +08:00
ClarkXia 4763bc7666
Refactor: router (#6123)
* chore: refactor unfinished

* feat: support create router

* refactor: render mode

* fix: code splitting false

* feat: add location for icestark

* chore: remove console

* test: examples

* fix: dataloader is undefined

* fix: test

* fix: test case

* fix: test case

* fix: types

* fix: test case

* fix: lock

* fix: update lock

* fix: hydration

* fix: router

* fix: router

* chore: log

* fix: hmr

* fix: test

* fix: test

* chore: optimize code

* Update singleRoute.test.tsx

* fix: types
2023-04-13 12:01:16 +08:00
逆葵 f79764a5b0 Merge branch 'release/next' into feat/miniapp-native-events 2023-04-10 16:17:05 +08:00