@griffel/postcss-syntax 1.0.8 → 1.1.0

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@griffel/postcss-syntax",
3
- "version": "1.0.8",
3
+ "version": "1.1.0",
4
4
  "description": "postcss syntax for Griffel",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -1,3 +1,5 @@
1
1
  export declare const GRIFFEL_SLOT_RAW = "griffel-slot";
2
2
  export declare const GRIFFEL_SRC_RAW = "griffel-src";
3
3
  export declare const GRIFFEL_DECLARATOR_RAW = "griffel-declarator";
4
+ export declare const GRIFFEL_SLOT_LOCATION_RAW = "griffel-slot-location";
5
+ export declare const GRIFFEL_DECLARATOR_LOCATION_RAW = "griffel-declarator-location";
package/src/constants.js CHANGED
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GRIFFEL_DECLARATOR_RAW = exports.GRIFFEL_SRC_RAW = exports.GRIFFEL_SLOT_RAW = void 0;
3
+ exports.GRIFFEL_DECLARATOR_LOCATION_RAW = exports.GRIFFEL_SLOT_LOCATION_RAW = exports.GRIFFEL_DECLARATOR_RAW = exports.GRIFFEL_SRC_RAW = exports.GRIFFEL_SLOT_RAW = void 0;
4
4
  exports.GRIFFEL_SLOT_RAW = 'griffel-slot';
5
5
  exports.GRIFFEL_SRC_RAW = 'griffel-src';
6
6
  exports.GRIFFEL_DECLARATOR_RAW = 'griffel-declarator';
7
+ exports.GRIFFEL_SLOT_LOCATION_RAW = 'griffel-slot-location';
8
+ exports.GRIFFEL_DECLARATOR_LOCATION_RAW = 'griffel-declarator-location';
7
9
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/postcss-syntax/src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,cAAc,CAAC;AAClC,QAAA,eAAe,GAAG,aAAa,CAAC;AAChC,QAAA,sBAAsB,GAAG,oBAAoB,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/postcss-syntax/src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,cAAc,CAAC;AAClC,QAAA,eAAe,GAAG,aAAa,CAAC;AAChC,QAAA,sBAAsB,GAAG,oBAAoB,CAAC;AAC9C,QAAA,yBAAyB,GAAG,uBAAuB,CAAC;AACpD,QAAA,+BAA+B,GAAG,6BAA6B,CAAC"}
package/src/index.d.ts CHANGED
@@ -5,7 +5,8 @@ export { createSyntax } from './createSyntax';
5
5
  declare const _default: {
6
6
  parse: (css: string | {
7
7
  toString(): string;
8
- }, opts?: import("./parse").ParserOptions | undefined) => import("postcss/lib/document").default;
8
+ }, opts?: import("./parse").ParserOptions | undefined) => import("postcss/lib/root").default;
9
9
  stringify: import("postcss").Stringifier;
10
10
  };
11
11
  export default _default;
12
+ export { GRIFFEL_DECLARATOR_LOCATION_RAW, GRIFFEL_SLOT_LOCATION_RAW } from './constants';
package/src/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createSyntax = exports.stringify = exports.parse = void 0;
3
+ exports.GRIFFEL_SLOT_LOCATION_RAW = exports.GRIFFEL_DECLARATOR_LOCATION_RAW = exports.createSyntax = exports.stringify = exports.parse = void 0;
4
4
  const parse_1 = require("./parse");
5
5
  Object.defineProperty(exports, "parse", { enumerable: true, get: function () { return parse_1.parse; } });
6
6
  const stringify_1 = require("./stringify");
@@ -11,4 +11,7 @@ exports.default = {
11
11
  parse: parse_1.parse,
12
12
  stringify: stringify_1.stringify,
13
13
  };
14
+ var constants_1 = require("./constants");
15
+ Object.defineProperty(exports, "GRIFFEL_DECLARATOR_LOCATION_RAW", { enumerable: true, get: function () { return constants_1.GRIFFEL_DECLARATOR_LOCATION_RAW; } });
16
+ Object.defineProperty(exports, "GRIFFEL_SLOT_LOCATION_RAW", { enumerable: true, get: function () { return constants_1.GRIFFEL_SLOT_LOCATION_RAW; } });
14
17
  //# sourceMappingURL=index.js.map
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/postcss-syntax/src/index.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAGvB,sFAHA,aAAK,OAGA;AAFd,2CAAwC;AAExB,0FAFP,qBAAS,OAEO;AACzB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AAErB,kBAAe;IACb,KAAK,EAAL,aAAK;IACL,SAAS,EAAT,qBAAS;CACV,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/postcss-syntax/src/index.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAGvB,sFAHA,aAAK,OAGA;AAFd,2CAAwC;AAExB,0FAFP,qBAAS,OAEO;AACzB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AAErB,kBAAe;IACb,KAAK,EAAL,aAAK;IACL,SAAS,EAAT,qBAAS;CACV,CAAC;AAEF,yCAAyF;AAAhF,4HAAA,+BAA+B,OAAA;AAAE,sHAAA,yBAAyB,OAAA"}
@@ -72,9 +72,6 @@ const plugin = (0, helper_plugin_utils_1.declare)((api, options) => {
72
72
  state.locations[declaratorId][key.node.name] = {
73
73
  ...property.node.loc,
74
74
  };
75
- state.locations[declaratorId][key.node.name] = {
76
- ...property.node.loc,
77
- };
78
75
  });
79
76
  }
80
77
  if (resetFunctionKinds.includes(callee.node.name)) {
@@ -1 +1 @@
1
- {"version":3,"file":"location-preset.js","sourceRoot":"","sources":["../../../../packages/postcss-syntax/src/location-preset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"location-preset.js","sourceRoot":"","sources":["../../../../packages/postcss-syntax/src/location-preset.ts"],"names":[],"mappings":"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"}
package/src/parse.d.ts CHANGED
@@ -3,6 +3,10 @@ import type { BabelPluginOptions } from '@griffel/babel-preset';
3
3
  export type PostCSSParserOptions = Pick<postcss.ProcessOptions<postcss.Document | postcss.Root>, 'from' | 'map'>;
4
4
  export interface ParserOptions extends PostCSSParserOptions, BabelPluginOptions {
5
5
  }
6
+ /**
7
+ * Generates CSS rules from a JavaScript file. Each slot in `makeStyles` and each `makeResetStyles` will be one line in the output.
8
+ * It returns a PostCSS AST that parses the generated CSS rules. For each node in AST, attaches information about its related slot location from the original js file.
9
+ */
6
10
  export declare const parse: (css: string | {
7
11
  toString(): string;
8
- }, opts?: ParserOptions) => postcss.Document;
12
+ }, opts?: ParserOptions) => postcss.Root;
package/src/parse.js CHANGED
@@ -4,6 +4,10 @@ exports.parse = void 0;
4
4
  const postcss = require("postcss");
5
5
  const transform_sync_1 = require("./transform-sync");
6
6
  const constants_1 = require("./constants");
7
+ /**
8
+ * Generates CSS rules from a JavaScript file. Each slot in `makeStyles` and each `makeResetStyles` will be one line in the output.
9
+ * It returns a PostCSS AST that parses the generated CSS rules. For each node in AST, attaches information about its related slot location from the original js file.
10
+ */
7
11
  const parse = (css, opts) => {
8
12
  const { from: filename = 'postcss-syntax.styles.ts' } = opts !== null && opts !== void 0 ? opts : {};
9
13
  const griffelPluginOptions = extractGrifellBabelPluginOptions(opts);
@@ -16,88 +20,35 @@ const parse = (css, opts) => {
16
20
  },
17
21
  });
18
22
  const { cssEntries, cssResetEntries, resetLocations, locations } = metadata;
19
- const cssRuleNodes = Object.entries(cssEntries)
20
- .map(([declarator, slots]) => {
21
- return Object.entries(slots).reduce((arr, [slot, rules]) => {
22
- if (!locations[declarator][slot]) {
23
- throw new Error(`No code location for ${declarator}:${slot} - please report a bug`);
24
- }
25
- const location = locations[declarator][slot];
26
- const nodes = rules.map(rule => {
27
- const root = postcss.parse(rule);
28
- root.walk(node => {
29
- node.raws[constants_1.GRIFFEL_SLOT_RAW] = slot;
30
- node.raws[constants_1.GRIFFEL_DECLARATOR_RAW] = declarator;
31
- if (!node.source) {
32
- return;
33
- }
34
- // There's currently no way to to map generated CSS to original JS code
35
- // Mapping each node to the original slot is probably the best we can do for now
36
- node.source.end = {
37
- offset: 0,
38
- column: location.end.column,
39
- line: location.end.line,
40
- };
41
- node.source.start = {
42
- offset: 0,
43
- column: location.start.column,
44
- line: location.start.line,
45
- };
46
- });
47
- return root.nodes[0];
48
- });
49
- return [...arr, ...nodes];
50
- }, []);
51
- })
52
- .flat();
53
- const cssResetRuleNodes = Object.entries(cssResetEntries).map(([declarator, [resetRule]]) => {
54
- if (!resetLocations[declarator]) {
55
- throw new Error(`No code location for ${declarator} - please report a bug`);
56
- }
57
- const location = resetLocations[declarator];
58
- const root = postcss.parse(resetRule);
59
- root.walk(node => {
60
- node.raws[constants_1.GRIFFEL_DECLARATOR_RAW] = declarator;
61
- if (!node.source) {
62
- return;
63
- }
64
- // There's currently no way to to map generated CSS to original JS code through Griffel AOT
65
- // Mapping each node to the original slot is probably the best we can do for now
66
- node.source.end = {
67
- offset: 0,
68
- column: location.end.column,
69
- line: location.end.line,
70
- };
71
- node.source.start = {
72
- offset: 0,
73
- column: location.start.column,
74
- line: location.start.line,
75
- };
23
+ const cssRuleSlotNames = [];
24
+ const cssRules = [];
25
+ Object.entries(cssEntries).map(([declarator, slots]) => {
26
+ Object.entries(slots).map(([slot, rules]) => {
27
+ cssRuleSlotNames.push(`${declarator} ${slot}`);
28
+ cssRules.push(rules.join(''));
76
29
  });
77
- return root.nodes[0];
78
30
  });
79
- const root = new postcss.Root();
80
- const allNodes = cssRuleNodes.concat(cssResetRuleNodes);
81
- for (const rule of allNodes) {
82
- root.append(rule);
83
- }
84
- const doc = new postcss.Document();
85
- root.parent = doc;
86
- // https://github.com/callstack/linaria/blob/911b59b0b8bb7de2accce63ece528841f2b29f4a/packages/postcss-linaria/src/parse.ts#L180
87
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
88
- // @ts-ignore
89
- root.document = doc;
90
- doc.nodes.push(root);
91
- doc.source = {
92
- input: new postcss.Input(code),
93
- start: {
94
- line: 1,
95
- column: 1,
96
- offset: 0,
97
- },
98
- };
99
- doc.raws[constants_1.GRIFFEL_SRC_RAW] = css;
100
- return doc;
31
+ Object.entries(cssResetEntries).map(([declarator, resetRules]) => {
32
+ cssRuleSlotNames.push(`${declarator}`);
33
+ cssRules.push(resetRules.join(''));
34
+ });
35
+ const root = postcss.parse(cssRules.join('\n'));
36
+ root.walk(node => {
37
+ if (!node.source || node.source.start === undefined) {
38
+ return;
39
+ }
40
+ const [declarator, slot] = cssRuleSlotNames[node.source.start.line - 1].split(' ');
41
+ node.raws[constants_1.GRIFFEL_DECLARATOR_RAW] = declarator;
42
+ if (slot) {
43
+ node.raws[constants_1.GRIFFEL_SLOT_RAW] = slot;
44
+ node.raws[constants_1.GRIFFEL_SLOT_LOCATION_RAW] = locations[declarator][slot];
45
+ }
46
+ else {
47
+ node.raws[constants_1.GRIFFEL_DECLARATOR_LOCATION_RAW] = resetLocations[declarator];
48
+ }
49
+ });
50
+ root.raws[constants_1.GRIFFEL_SRC_RAW] = css;
51
+ return root;
101
52
  };
102
53
  exports.parse = parse;
103
54
  const extractGrifellBabelPluginOptions = (opts = {}) => {
package/src/parse.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../../packages/postcss-syntax/src/parse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../../packages/postcss-syntax/src/parse.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AACnC,qDAA6C;AAC7C,2CAMqB;AAOrB;;;GAGG;AACI,MAAM,KAAK,GAAG,CAAC,GAAoC,EAAE,IAAoB,EAAE,EAAE;IAClF,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,0BAA0B,EAAE,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;IACnE,MAAM,oBAAoB,GAAG,gCAAgC,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;IAC5B,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,wBAAa,EAAC,IAAI,EAAE;QACvC,QAAQ;QACR,aAAa,EAAE;YACb,GAAG,oBAAoB;YACvB,gBAAgB,EAAE,IAAI;SACvB;KACF,CAAC,CAAC;IAEH,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC;IAE5E,MAAM,gBAAgB,GAAa,EAAE,CAAC;IACtC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,EAAE;QACrD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;YAC1C,gBAAgB,CAAC,IAAI,CAAC,GAAG,UAAU,IAAI,IAAI,EAAE,CAAC,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE;QAC/D,gBAAgB,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC;QACvC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACf,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE;YACnD,OAAO;SACR;QACD,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnF,IAAI,CAAC,IAAI,CAAC,kCAAsB,CAAC,GAAG,UAAU,CAAC;QAC/C,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,IAAI,CAAC,4BAAgB,CAAC,GAAG,IAAI,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,qCAAyB,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;SACpE;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,2CAA+B,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;SACzE;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,IAAI,CAAC,2BAAe,CAAC,GAAG,GAAG,CAAC;IACjC,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AA9CW,QAAA,KAAK,SA8ChB;AAEF,MAAM,gCAAgC,GAAG,CAAC,OAAsB,EAAE,EAAE,EAAE;IACpE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAC1E,MAAM,kBAAkB,GAAuB,EAAE,CAAC;IAClD,IAAI,YAAY,EAAE;QAChB,kBAAkB,CAAC,YAAY,GAAG,YAAY,CAAC;KAChD;IAED,IAAI,eAAe,EAAE;QACnB,kBAAkB,CAAC,eAAe,GAAG,eAAe,CAAC;KACtD;IAED,IAAI,gBAAgB,EAAE;QACpB,kBAAkB,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;KACxD;IAED,IAAI,OAAO,EAAE;QACX,kBAAkB,CAAC,OAAO,GAAG,OAAO,CAAC;KACtC;IAED,OAAO,kBAAkB,CAAC;AAC5B,CAAC,CAAC"}