Commit Graph

79 Commits

Author SHA1 Message Date
ClarkXia b19b5c586f Feat: remove data loader (#379)
* feat: regenerate config file

* feat: add data loader plugin

* feat: compile data loader

* feat: remove data-loader

* chore: remove useless file

* fix: remove useless code

* fix: remove minify

* fix: watch app.ts

* chore: remove log
2022-11-15 10:15:15 +08:00
水澜 1d1bb89778 refactor: swc plugin (#346)
* fix: basename in faas

* fix: if basename not exist

* refactor: swc plugin

* fix: deps

* fix: plugin path

* fix: swc plugin path

* fix: lock file

* fix: conflict

* fix: transform jsx by default

* feat: const modules

* fix: lock file

* feat: keep platform

* fix: uppercase first letter

* chore: comment for swc config

* revert: prebunlde

* revert: regenerator config

* chore: map from swc is string

* fix: beta version

* test: keep platform
2022-11-15 10:13:53 +08:00
ClarkXia 48603cdf8f feat: support swc options for plugin-rax-compat and onappear on rax-compat (#349)
* feat: support swc options for plugin-rax-compat

* chore: example

* test: fix test case

* test: fix test case

* test: fix test case

* fix: outputdir

* fix: onappear for no ref cases

* fix: merge options

* fix: appear polyfill

* chore: remove appear polyfill dependency

* fix: add swc helpers

* fix: onappear on rax-compat

* refactor: format code and not to use react.frowardRef

Co-authored-by: ZeroLing <zhuoling.lcl@alibaba-inc.com>
2022-11-14 19:55:00 +08:00
水澜 0152f33742 feat: get server data (#288)
* fix: lint

* feat: getStatiData getServerData

* refactor: distinguish static env

* test: get static data

* fix: ssr runtime env

* fix: ssr runtime env

* fix: fliter ssr runtime env

* fix: routes data may be null

* fix: return empty object if getStaticData not exists

* fix: throw error when generate html

* fix: env order

* refactor: env name

* refactor: ssg option

* refactor: get hydrate info by userConfig

* fix: lint

* fix: lint

* fix: lint

* refactor: static generation to render mode

* refactor: reset ssr env in runtime

* refactor: isCSR to csr

* fix: type
2022-11-14 19:48:13 +08:00
水澜 2eac971c1b feat: data loader shaking (#246)
* fix: lint

* feat: apply swc transform to esbuild

* chore: updata lock file

* refactor: rename params

* fix: types

* fix: add data loader to entry

* fix: add data loader after runtime

* feat: support config exports for ssr

* fix: conflict

* chore: remove debug info

* fix: transform page entry only

* fix: file extension

* fix: file extension

* revert: document

* fix: side effects

* feat: filter pages without getData

* feat: bundle optimization in dev mod

* refactor: side effects is not needed

* refactor: pass swc options to server compiler

* chore: comment

* refactor: runtime chunk is no more needed

* refactor: render data loader according to manifest

* test: data-loader

* chore: rename

* refactor: jsxTransform

* chore: update swc plugin version

* chore: update lock file

* fix: add jsx dev runtime

* chore: update swc plugin version

Co-authored-by: ZeroLing <zhuoling.lcl@alibaba-inc.com>
2022-11-14 19:22:57 +08:00
ClarkXia 070e707944 feat: serve static assets (#164)
* feat: server static assets

* chore: update lock

* fix: dev server

* chore: remove log

* fix: middleware order

* chore: lock file

* chore: types

* chore: types
2022-11-14 19:17:25 +08:00
luhc228 19b00c1276 feat: mock (#161)
* feat: support get mock data

* feat: middleware

* feat: support watch mock dir file change

* chore: lock

* fix: mock

* chore: lint

* feat: put mock middleware to first

* feat: support mock exclude

* fix: app.addProvider not be added (#190)

* feat: app.addProvider not be executed

* fix: still excute when error

* chore: skip test
2022-11-14 19:17:25 +08:00
大果 69c7ecb251 feat: support tree-shaking react-router deps when only one route (#86)
* feat: support tree-shaking react-router deps when only one route

* chore: optimize history API

* fix: typo error

* chore: make esbuild compile @ice/runtime add inject env vars

* chore: make esbuild compile @ice/runtime add inject env vars

* chore: resolve conflict

* feat: mock react-router api when disable router

* feat: env

* fix: test

* feat: support dotenv

* chore: add stringify

* chore: lock build-scripts

* feat: add removeHistoryDeadCode userConfig

* fix: duplicate register of routes

* fix: default value of define

* chore: optimize code

* fix: typo

* chore: upgrade react

* fix: code

* chore: optimize matchRoutes

Co-authored-by: ClarkXia <xiawenwu41@gmail.com>
2022-11-14 19:17:06 +08:00
ClarkXia 8f4f79dae5 feat: minify and dropLogLevel (#119)
* feat: minify and dropLogLevel

* fix: test case
2022-11-14 19:16:17 +08:00
水澜 99e586bf7c Feat nested routing (#112)
* feat: nested routing

* fix: update page config after navigate

* fix: initial value

* refactor: fn name

* feat: avoid load data for old route

* refactor: decoupling the dependency to page

* refactor: types for getConfig

* refactor: use prmomise

* chore: rename

* test: filter matched route

* chore: optimize types

* feat: support useAppData

* chore: just play

* chore: remove log

* chore: resolve conflict

* refactor: pages to routes

* fix: page to route

* refactor: merge value

Co-authored-by: liuxiong.lx <liuxiong.lx@alibaba-inc.com>
2022-11-14 19:16:12 +08:00
ClarkXia adc076edc2 feat: compile dependencies (#117)
* feat: compile dependencies

* fix: optimize code

* fix: remove console

* chore: optimize code

* chore: test

* fix: test case
2022-11-14 19:15:57 +08:00
luhc228 7bbe0e9780 Fix: can not open browser in dev (#100)
* fix: can not open browser in dev

* chore: disableOpen

* fix: can not get disableOpen arg

* feat: change disable-open to open
2022-11-14 19:15:57 +08:00
ClarkXia b50d478103 feat: optimize output folder (#115)
* feat: optimize folder

* fix: assets transform

* fix: optimze code

* fix: optimize code
2022-11-14 19:15:57 +08:00
luhc228 54163342ef Feat: define routes and ignore route files (#69)
* feat: support define routes

* fix: test

* fix: test

* chore: undefined type

* fix: conflict

* chore: remove pages str from route id

* fix: watch route change

* fix: warn

* fix: test

* fix: test

* chore: example

* chore: add route-gen example

* feat: add integration test

* chore: test

* chore: update config file

* chore: remove pnpm cache

* chore: test

* chore: remove test:ci from ci workflow

* chore: update build-scripts version

* chore: build fixture

* chore: remove devServer test

* chore: buildFixture

* feat: add vitest

* chore: add ts-ignore

* chore: node ci version

* chore: comment bundle analyzer

* chore: add test timeout

* fix: lint

* chore: remove threads

* chore: set maxThreads and minThreads

* chore: add maxConcurrency

* chore: remove coverage

* chore: threads

* chore: set threads to false

* fix: conflict

* fix: comment
2022-11-14 19:15:57 +08:00
水澜 525142f9d4 refactor: hydrate document (#74)
* feat: update page config after link

* Rename Document.tsx to document.tsx

* chore: add comment

* test: routing

* fix: test utils of puppeteer page

* test: update pageconfig after route

* chore: add origin source

* fix: meta tag

* fix: add s

* feat: reuse the links already loaded

* refactor: hydrate document

* refactor: pass data by app context

* refactor: get assets in document

* refactor: pass app as children

* refactor: use app context

* revert: document

* refactor: pass document by app context

* Rename document.tsx to Document.tsx

* fix: hydrate error

* chore: add comment

* feat: toggle for ssr

* refactor: entry options

* refactor: merge simple functions

* feat: downgrade to csr

* refactor: ssr entry

* fix: file name

* fix: remove deadcode

* Rename generateHtml.ts to generateHTML.ts

* fix: remove deadcode

* fix: remove deadcode

* refactor: remove block scripts

* feat: pass ssr flag to csr

* fix: remove ssg flag

* fix: spelling

* refactor: pass ssr flag to hydrate

* chore: add todo for runtime

* fix: typo

* chore: add todo for load links

* chore: send html for send html

* refactor: remove config for custom rootId

* feat: load page assets

* feat: ssr config

* refactor: disable csr hydrate warning

* chore: add issue link

Co-authored-by: ClarkXia <xiawenwu41@gmail.com>
2022-11-14 19:15:29 +08:00
luhc228 ab9c50913b test: use vitest instead of jest (#75)
* test: use vitest

* chore: update test script in ci.yml

* chore: remove coverage

* chore: remove max-old-space-size

* chore: not use threads

* chore: add maxThreads

* chore: set maxThreads to 2

* chore: set to node 16

* chore: set threads to false

* chore: add coverage

* chore: max-old-space-size
2022-11-14 19:15:00 +08:00
ClarkXia 748adfb2c4 refactor: create @ice/app for framework (#67)
* fix: package name

* refactor: main package for ice

* fix: test case

* test: test case

* test: run context without built-in plugin

* test: add console level

* test: test case

* fix: remove built-in plugin

* test: use json file

* Revert "test: use json file"

This reverts commit be309d7df5a00fcc14fdc54fe2a63c9bce54221c.

* fix: update build-scripts

* fix: optimize code

* fix: exports field

* chore: use consola instead of console

* fix: optimize code
2022-11-14 19:14:32 +08:00
ClarkXia 43a143de6d feat: support defineUserConfig (#53)
* feat: support config file

* feat: config file

* feat: add config watch

* fix: createServer path

* feat: add json support

* chore: space

* fix: add browserlist and webpack bundle analyze

* fix: update package name
2022-11-14 19:13:53 +08:00
ClarkXia 6f9e64bea5 fix: improve framework config (#36)
* feat: config

* fix: webpack config

* feat: user config

* fix: css minimizer option

* fix: css minimizer option

* fix: alias with root

* fix: default define

* chore: optimize code

* fix: optimize code

* chore: update comment

* chore: lint

* chore: remove useless code

* fix: assets mainfest

* fix: test case
2022-11-14 19:12:43 +08:00
ClarkXia 647996e63e feat: define runtime value (#30)
* feat: define runtime value

* chore: remove console

* test: fix test option

* fix: remove process fallback for client

* fix: optimize code

* feat: optimize code

* fix: optimize code

* fix: types

* chore: optimize code

* test: add test case

* fix: remove useless code

* chore: optimize code

* chore: optimize code
2022-11-14 19:12:27 +08:00
水澜 edc436a073 feat: Document (#34)
* feat: match route

* feat: generate route manifest

* feat: document component

* refactor: remove routes json

* feat: route data

* refactor: render async scripts

* feat: manifest

* fix: pass path info

* fix: block css

* fix: hijackwebpack

* feat: get assets from manifest

* fix: ts error

* feat: mege page assets and config

* fix: file suffix

* fix: file suffix

* fix: await generate html

* refactor: return the last page config

* fix: pageconfig may be null

* fix: page config type

* chore: log test result

* chore: log test result

* chore: log test result

* chore: log test result

* chore: enable after compile

* fix: await compile

* fix: await compile

* feat: assets manifest

* fix: lint

* fix: enable build test

* fix: enable build test

* fix: type

* chore: add comment

* fix: conflict

* fix: conflict

* refactor: use first compile tag

* refactor: root -> main

* refactor: server context to request context

* fix: defer attr

* refactor: load route data

* refactor: fn name

* refactor: rename to client entry

* refactor: rename route wapper to page wapper

* fix: aplus blocks the puppeteer load page

* fix: remove plugin not needed

* chore: add todo

* fix: update lock file

* feat: rewrite matchRoutes function

* fix: await async hooks (#41)

* chore: add todo

* refactor: route manifest

* chore: update lock file

* fix: get route str

* refactor: set default output

* refactor: set default output

* refactor: get extname

* refactor: rename plugin folder

* fix: file path

* fix: support tsx

Co-authored-by: ClarkXia <xiawenwu41@gmail.com>
Co-authored-by: luhc228 <luhengchang228@gmail.com>
2022-11-14 19:12:06 +08:00
shuilan.cj 2559d63e86 chore: add comment 2022-11-14 19:05:51 +08:00
shuilan.cj eb1ec431f9 fix: enable build test 2022-11-14 19:05:51 +08:00
shuilan.cj b36e9ddbb6 fix: enable build test 2022-11-14 19:05:51 +08:00
shuilan.cj 36cf373919 fix: await compile 2022-11-14 19:03:43 +08:00
shuilan.cj 78b7235107 fix: await compile 2022-11-14 19:03:43 +08:00
shuilan.cj d6ad0e7b8a chore: log test result 2022-11-14 19:03:43 +08:00
shuilan.cj 5995c18753 chore: log test result 2022-11-14 19:03:43 +08:00
大果 2b11d0578e feat: router (#28)
* feat: generate route manifest

* chore: lock

* feat: support generate nested route manifest

* chore: type

* chore: rename test to tests

* chore: remove caseSensitive

* chore: support generate routes

* fix: lint

* fix: lint

* feat: add componentName

* feat: support generate route

* feat: not add Router when only has one page

* fix: merge confict

* refactor: service route generate

* chore: update route-manifest readme

* test: add more route test cases

* chore: remove comment

* test: add invalid routes test case

* chore: update invalid char judge logic

* fix: comment

* fix: lint error

* chore: lock

Co-authored-by: luhc228 <luhengchang228@gmail.com>
2022-11-14 18:49:43 +08:00