@plumeria/utils 6.3.0 → 6.3.1

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/create.d.ts CHANGED
@@ -4,4 +4,4 @@ export interface StyleRecord {
4
4
  hash: string;
5
5
  sheet: string;
6
6
  }
7
- export declare function getStyleRecords(key: string, styleRule: CSSProperties, priority?: number): StyleRecord[];
7
+ export declare function getStyleRecords(key: string, styleRule: CSSProperties): StyleRecord[];
package/dist/create.js CHANGED
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getStyleRecords = getStyleRecords;
4
4
  const zss_engine_1 = require("zss-engine");
5
- function getStyleRecords(key, styleRule, priority = 1 | 2) {
5
+ function getStyleRecords(key, styleRule) {
6
6
  const flat = {};
7
7
  const nonFlat = {};
8
- const notNormalize = priority === 1 ? ':not(#\\#)' : ':not(#\\#):not(#\\#)';
8
+ const notNormalize = ':not(#\\#)';
9
9
  (0, zss_engine_1.splitAtomicAndNested)(styleRule, flat, nonFlat);
10
10
  const finalFlat = (0, zss_engine_1.overrideLonghand)(flat);
11
11
  const records = [];
@@ -73,10 +73,9 @@ function getStyleRecords(key, styleRule, priority = 1 | 2) {
73
73
  else {
74
74
  hashSource = { [selector]: hashSource };
75
75
  }
76
- const suffix = atRule ? notNormalize : ':not(#\\#)';
77
76
  const hash = (0, zss_engine_1.genBase36Hash)(hashSource, 1, 8);
78
77
  let sheet = (0, zss_engine_1.transpileAtomic)(prop, value, hash, normalizedSelector);
79
- sheet = sheet.replace(`.${hash}`, `.${hash}${suffix}`);
78
+ sheet = sheet.replace(`.${hash}`, `.${hash}${notNormalize}`);
80
79
  if (atRule) {
81
80
  sheet = `${atRule} { ${sheet} }`;
82
81
  }
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export type { CSSObject, FileStyles, StaticTable, KeyframesHashTable, KeyframesObjectTable, ViewTransitionHashTable, ViewTransitionObjectTable, CreateThemeObjectTable, CreateHashTable, CreateObjectTable, VariantsHashTable, VariantsObjectTable, CreateThemeHashTable, CreateStaticHashTable, CreateStaticObjectTable, } from './types';
2
2
  export { objectExpressionToObject, collectLocalConsts, traverse, t, extractOndemandStyles, deepMerge, scanAll, } from './parser';
3
+ export type { StyleRecord } from './create';
3
4
  export { getStyleRecords } from './create';
4
5
  export { createTheme } from './createTheme';
5
- export type { StyleRecord } from './create';
6
6
  export { resolveImportPath } from './resolver';
7
+ export { optimizer } from './optimizer';
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveImportPath = exports.createTheme = exports.getStyleRecords = exports.scanAll = exports.deepMerge = exports.extractOndemandStyles = exports.t = exports.traverse = exports.collectLocalConsts = exports.objectExpressionToObject = void 0;
3
+ exports.optimizer = exports.resolveImportPath = exports.createTheme = exports.getStyleRecords = exports.scanAll = exports.deepMerge = exports.extractOndemandStyles = exports.t = exports.traverse = exports.collectLocalConsts = exports.objectExpressionToObject = void 0;
4
4
  var parser_1 = require("./parser");
5
5
  Object.defineProperty(exports, "objectExpressionToObject", { enumerable: true, get: function () { return parser_1.objectExpressionToObject; } });
6
6
  Object.defineProperty(exports, "collectLocalConsts", { enumerable: true, get: function () { return parser_1.collectLocalConsts; } });
@@ -15,3 +15,5 @@ var createTheme_1 = require("./createTheme");
15
15
  Object.defineProperty(exports, "createTheme", { enumerable: true, get: function () { return createTheme_1.createTheme; } });
16
16
  var resolver_1 = require("./resolver");
17
17
  Object.defineProperty(exports, "resolveImportPath", { enumerable: true, get: function () { return resolver_1.resolveImportPath; } });
18
+ var optimizer_1 = require("./optimizer");
19
+ Object.defineProperty(exports, "optimizer", { enumerable: true, get: function () { return optimizer_1.optimizer; } });
@@ -0,0 +1 @@
1
+ export declare function optimizer(cssCode: string): Promise<string>;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.optimizer = optimizer;
7
+ const postcss_1 = __importDefault(require("postcss"));
8
+ const postcss_combine_media_query_1 = __importDefault(require("postcss-combine-media-query"));
9
+ const lightningcss_1 = require("lightningcss");
10
+ async function optimizer(cssCode) {
11
+ const merged = await (0, postcss_1.default)([(0, postcss_combine_media_query_1.default)()]).process(cssCode, {
12
+ from: undefined,
13
+ });
14
+ const light = (0, lightningcss_1.transform)({
15
+ filename: 'global.css',
16
+ code: Buffer.from(merged.css),
17
+ minify: true,
18
+ targets: {
19
+ safari: 16,
20
+ edge: 110,
21
+ firefox: 110,
22
+ chrome: 110,
23
+ },
24
+ });
25
+ return Buffer.from(light.code).toString('utf-8');
26
+ }
package/dist/parser.js CHANGED
@@ -621,6 +621,22 @@ function scanAll() {
621
621
  const hash = localTables.createThemeHashTable[uniqueKey];
622
622
  localCreateThemeHashTable[localName] = hash;
623
623
  }
624
+ if (localTables.keyframesHashTable[uniqueKey]) {
625
+ const hash = localTables.keyframesHashTable[uniqueKey];
626
+ localKeyframesHashTable[localName] = hash;
627
+ if (localTables.keyframesObjectTable[hash]) {
628
+ localKeyframesObjectTable[hash] =
629
+ localTables.keyframesObjectTable[hash];
630
+ }
631
+ }
632
+ if (localTables.viewTransitionHashTable[uniqueKey]) {
633
+ const hash = localTables.viewTransitionHashTable[uniqueKey];
634
+ localViewTransitionHashTable[localName] = hash;
635
+ if (localTables.viewTransitionObjectTable[hash]) {
636
+ localViewTransitionObjectTable[hash] =
637
+ localTables.viewTransitionObjectTable[hash];
638
+ }
639
+ }
624
640
  }
625
641
  });
626
642
  }
@@ -675,7 +691,10 @@ function scanAll() {
675
691
  };
676
692
  const obj = objectExpressionToObject(init.arguments[0].expression, localStaticTable, localKeyframesHashTable, localViewTransitionHashTable, localCreateThemeHashTable, localCreateThemeObjectTable, localCreateHashTable, localCreateStaticHashTable, localCreateStaticObjectTable, localVariantsHashTable, resolveVariable);
677
693
  const uniqueKey = `${filePath}-${name}`;
678
- const isPassOneMethod = method === 'createStatic' || method === 'createTheme';
694
+ const isPassOneMethod = method === 'createStatic' ||
695
+ method === 'createTheme' ||
696
+ method === 'keyframes' ||
697
+ method === 'viewTransition';
679
698
  if (isFirstPass && !isPassOneMethod)
680
699
  continue;
681
700
  if (method === 'createStatic') {
@@ -740,16 +759,18 @@ function scanAll() {
740
759
  localCreateObjectTable[hash] = obj;
741
760
  const hashMap = {};
742
761
  Object.entries(obj).forEach(([key, style]) => {
743
- const records = (0, create_1.getStyleRecords)(key, style, 2);
762
+ const records = (0, create_1.getStyleRecords)(key, style);
744
763
  const atomMap = {};
745
764
  records.forEach((r) => (atomMap[r.key] = r.hash));
746
765
  hashMap[key] = atomMap;
747
- extractOndemandStyles(style, fileExtractedSheets, localTables);
748
- records.forEach((r) => {
749
- if (!fileExtractedSheets.includes(r.sheet)) {
750
- fileExtractedSheets.push(r.sheet);
751
- }
752
- });
766
+ if (!isProduction) {
767
+ extractOndemandStyles(style, fileExtractedSheets, localTables);
768
+ records.forEach((r) => {
769
+ if (!fileExtractedSheets.includes(r.sheet)) {
770
+ fileExtractedSheets.push(r.sheet);
771
+ }
772
+ });
773
+ }
753
774
  });
754
775
  localCreateAtomicMapTable[hash] = hashMap;
755
776
  localTables.createAtomicMapTable[hash] = hashMap;
@@ -863,7 +884,7 @@ function extractOndemandStyles(obj, extractedSheets, t) {
863
884
  const obj = t.createObjectTable[hash];
864
885
  if (obj) {
865
886
  Object.entries(obj).forEach(([key, style]) => {
866
- const records = (0, create_1.getStyleRecords)(key, style, 2);
887
+ const records = (0, create_1.getStyleRecords)(key, style);
867
888
  records.forEach((r) => addSheet(r.sheet));
868
889
  });
869
890
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plumeria/utils",
3
- "version": "6.3.0",
3
+ "version": "6.3.1",
4
4
  "description": "Plumeria Utils",
5
5
  "author": "Refirst 11",
6
6
  "license": "MIT",
@@ -22,7 +22,10 @@
22
22
  ],
23
23
  "dependencies": {
24
24
  "@swc/core": "1.15.8",
25
- "zss-engine": "2.2.0"
25
+ "zss-engine": "2.2.0",
26
+ "postcss": "8.5.6",
27
+ "postcss-combine-media-query": "^2.1.0",
28
+ "lightningcss": "^1.30.2"
26
29
  },
27
30
  "publishConfig": {
28
31
  "access": "public",