@rsbuild/plugin-stylus 1.1.0-beta.1 → 1.1.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -11,7 +11,7 @@ __webpack_require__.n = (module)=>{
11
11
  enumerable: !0,
12
12
  get: definition[key]
13
13
  });
14
- }, __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop), __webpack_require__.r = function(exports1) {
14
+ }, __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop), __webpack_require__.r = (exports1)=>{
15
15
  'undefined' != typeof Symbol && Symbol.toStringTag && Object.defineProperty(exports1, Symbol.toStringTag, {
16
16
  value: 'Module'
17
17
  }), Object.defineProperty(exports1, '__esModule', {
@@ -29,24 +29,24 @@ let external_reduce_configs_namespaceObject = require("reduce-configs"), src_req
29
29
  name: PLUGIN_STYLUS_NAME,
30
30
  setup (api) {
31
31
  api.modifyBundlerChain(async (chain, { CHAIN_ID, environment })=>{
32
+ var callback;
32
33
  let { config } = environment, { sourceMap } = config.output, mergedOptions = (0, external_reduce_configs_namespaceObject.reduceConfigs)({
33
34
  initial: {
34
35
  sourceMap: 'boolean' == typeof sourceMap ? sourceMap : sourceMap.css
35
36
  },
36
37
  config: options,
37
38
  mergeFn: external_deepmerge_default()
38
- }), test = /\.styl(us)?$/, rule = chain.module.rule(CHAIN_ID.RULE.STYLUS).test(test).merge({
39
- sideEffects: !0
40
- }).resolve.preferRelative(!0).end().resourceQuery({
41
- not: /raw/
42
- });
43
- chain.module.rule(CHAIN_ID.RULE.STYLUS_RAW).test(test).type('asset/source').resourceQuery(/raw/);
44
- let cssRule = chain.module.rules.get(CHAIN_ID.RULE.CSS);
45
- for (let id of (rule.dependency(cssRule.get('dependency')), Object.keys(cssRule.uses.entries()))){
46
- let loader = cssRule.uses.get(id), options = loader.get('options') ?? {}, clonedOptions = external_deepmerge_default()({}, options);
47
- id === CHAIN_ID.USE.CSS && (clonedOptions.importLoaders += 1), rule.use(id).loader(loader.get('loader')).options(clonedOptions);
48
- }
49
- rule.use(CHAIN_ID.USE.STYLUS).loader(src_require.resolve('stylus-loader')).options(mergedOptions);
39
+ }), test = /\.styl(us)?$/, rule = chain.module.rule(CHAIN_ID.RULE.STYLUS).test(test).resourceQuery({
40
+ not: /raw|inline/
41
+ }).sideEffects(!0).resolve.preferRelative(!0).end(), inlineRule = chain.module.rule(CHAIN_ID.RULE.STYLUS_INLINE).test(test).resourceQuery(/inline/);
42
+ chain.module.rule(CHAIN_ID.RULE.STYLUS_RAW).test(test).type('asset/source').resourceQuery(/raw/), (callback = (rule, type)=>{
43
+ let cssRule = chain.module.rules.get('normal' === type ? CHAIN_ID.RULE.CSS : CHAIN_ID.RULE.CSS_INLINE);
44
+ for (let id of (rule.dependency(cssRule.get('dependency')), Object.keys(cssRule.uses.entries()))){
45
+ let loader = cssRule.uses.get(id), options = loader.get('options') ?? {}, clonedOptions = external_deepmerge_default()({}, options);
46
+ id === CHAIN_ID.USE.CSS && (clonedOptions.importLoaders += 1), rule.use(id).loader(loader.get('loader')).options(clonedOptions);
47
+ }
48
+ rule.use(CHAIN_ID.USE.STYLUS).loader(src_require.resolve('stylus-loader')).options(mergedOptions);
49
+ })(rule, 'normal'), callback(inlineRule, 'inline');
50
50
  });
51
51
  }
52
52
  });
package/dist/index.d.ts CHANGED
@@ -1,17 +1,52 @@
1
1
  import type { RsbuildPlugin } from '@rsbuild/core';
2
2
  export declare const PLUGIN_STYLUS_NAME = "rsbuild:stylus";
3
3
  type StylusOptions = {
4
+ /**
5
+ * Specify Stylus plugins to use.
6
+ * @default []
7
+ * @example use: ["nib"]
8
+ */
4
9
  use?: string[];
5
- define?: [string, any, boolean?];
10
+ /**
11
+ * Define Stylus variables or functions.
12
+ * @default []
13
+ * @example
14
+ * define: [
15
+ * ["$development", process.env.NODE_ENV === "development"],
16
+ * ["rawVar", 42, true],
17
+ * ]
18
+ */
19
+ define?: [string, any, boolean?][];
20
+ /**
21
+ * Add paths to the import lookup paths.
22
+ * @default []
23
+ * @example include: [path.join(__dirname, "src/styl/config")]
24
+ */
6
25
  include?: string[];
26
+ /**
27
+ * Include regular CSS on `@import`.
28
+ * @default false
29
+ */
30
+ includeCSS?: boolean;
7
31
  /**
8
32
  * Import the specified Stylus files/paths, can not be relative path.
9
- * @example import: ["nib", path.join(__dirname, "src/styl/mixins")],
10
33
  * @default []
34
+ * @example import: ["nib", path.join(__dirname, "src/styl/mixins")],
11
35
  */
12
36
  import?: string[];
37
+ /**
38
+ * Resolve relative url()'s inside imported files.
39
+ */
13
40
  resolveURL?: boolean;
41
+ /**
42
+ * Emits comments in the generated CSS indicating the corresponding Stylus line.
43
+ * @default false
44
+ */
14
45
  lineNumbers?: boolean;
46
+ /**
47
+ * Move `@import` and `@charset` to the top.
48
+ * @default false
49
+ */
15
50
  hoistAtrules?: boolean;
16
51
  };
17
52
  export type PluginStylusOptions = {
package/dist/index.js CHANGED
@@ -5,24 +5,24 @@ let src_require = (0, __WEBPACK_EXTERNAL_MODULE_node_module_ab9f2194__.createReq
5
5
  name: PLUGIN_STYLUS_NAME,
6
6
  setup (api) {
7
7
  api.modifyBundlerChain(async (chain, { CHAIN_ID, environment })=>{
8
+ var callback;
8
9
  let { config } = environment, { sourceMap } = config.output, mergedOptions = (0, __WEBPACK_EXTERNAL_MODULE_reduce_configs_02786df6__.reduceConfigs)({
9
10
  initial: {
10
11
  sourceMap: 'boolean' == typeof sourceMap ? sourceMap : sourceMap.css
11
12
  },
12
13
  config: options,
13
14
  mergeFn: __WEBPACK_EXTERNAL_MODULE_deepmerge__.default
14
- }), test = /\.styl(us)?$/, rule = chain.module.rule(CHAIN_ID.RULE.STYLUS).test(test).merge({
15
- sideEffects: !0
16
- }).resolve.preferRelative(!0).end().resourceQuery({
17
- not: /raw/
18
- });
19
- chain.module.rule(CHAIN_ID.RULE.STYLUS_RAW).test(test).type('asset/source').resourceQuery(/raw/);
20
- let cssRule = chain.module.rules.get(CHAIN_ID.RULE.CSS);
21
- for (let id of (rule.dependency(cssRule.get('dependency')), Object.keys(cssRule.uses.entries()))){
22
- let loader = cssRule.uses.get(id), options = loader.get('options') ?? {}, clonedOptions = (0, __WEBPACK_EXTERNAL_MODULE_deepmerge__.default)({}, options);
23
- id === CHAIN_ID.USE.CSS && (clonedOptions.importLoaders += 1), rule.use(id).loader(loader.get('loader')).options(clonedOptions);
24
- }
25
- rule.use(CHAIN_ID.USE.STYLUS).loader(src_require.resolve('stylus-loader')).options(mergedOptions);
15
+ }), test = /\.styl(us)?$/, rule = chain.module.rule(CHAIN_ID.RULE.STYLUS).test(test).resourceQuery({
16
+ not: /raw|inline/
17
+ }).sideEffects(!0).resolve.preferRelative(!0).end(), inlineRule = chain.module.rule(CHAIN_ID.RULE.STYLUS_INLINE).test(test).resourceQuery(/inline/);
18
+ chain.module.rule(CHAIN_ID.RULE.STYLUS_RAW).test(test).type('asset/source').resourceQuery(/raw/), (callback = (rule, type)=>{
19
+ let cssRule = chain.module.rules.get('normal' === type ? CHAIN_ID.RULE.CSS : CHAIN_ID.RULE.CSS_INLINE);
20
+ for (let id of (rule.dependency(cssRule.get('dependency')), Object.keys(cssRule.uses.entries()))){
21
+ let loader = cssRule.uses.get(id), options = loader.get('options') ?? {}, clonedOptions = (0, __WEBPACK_EXTERNAL_MODULE_deepmerge__.default)({}, options);
22
+ id === CHAIN_ID.USE.CSS && (clonedOptions.importLoaders += 1), rule.use(id).loader(loader.get('loader')).options(clonedOptions);
23
+ }
24
+ rule.use(CHAIN_ID.USE.STYLUS).loader(src_require.resolve('stylus-loader')).options(mergedOptions);
25
+ })(rule, 'normal'), callback(inlineRule, 'inline');
26
26
  });
27
27
  }
28
28
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rsbuild/plugin-stylus",
3
- "version": "1.1.0-beta.1",
3
+ "version": "1.1.0-beta.2",
4
4
  "description": "Stylus plugin for Rsbuild",
5
5
  "homepage": "https://rsbuild.dev",
6
6
  "repository": {
@@ -29,11 +29,11 @@
29
29
  "stylus-loader": "8.1.1"
30
30
  },
31
31
  "devDependencies": {
32
- "@rslib/core": "0.5.4",
33
- "@types/node": "^22.13.10",
32
+ "@rslib/core": "0.5.5",
33
+ "@types/node": "^22.13.11",
34
34
  "typescript": "^5.8.2",
35
- "@scripts/test-helper": "1.0.1",
36
- "@rsbuild/core": "1.3.0-beta.1"
35
+ "@rsbuild/core": "1.3.0-beta.2",
36
+ "@scripts/test-helper": "1.0.1"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "@rsbuild/core": "1.x"