@arbor-css/modes 0.0.94 → 0.0.96

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.
@@ -17,4 +17,5 @@ export type ModeInstance<T extends SimpleTokenSchema> = DeepPartial<ModeValues<T
17
17
  export type ModeInstanceOptions = Omit<Partial<ModeInternals>, 'name'>;
18
18
  export declare function createModeInstance<T extends SimpleTokenSchema>(name: string, values: DeepPartial<ModeValues<T>>, options?: ModeInstanceOptions): ModeInstance<T>;
19
19
  export declare function getModeInternals(mode: ModeInstance<any>): ModeInternals;
20
+ export declare function mergeModes(modeA: ModeInstance<any>, modeB: ModeInstance<any>): ModeInstance<any>;
20
21
  //# sourceMappingURL=createModeSchema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createModeSchema.d.ts","sourceRoot":"","sources":["../src/createModeSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAEN,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,EACL,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,MAAM,kBAAkB,GAAG,qBAAqB,CAAC;AAEvD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;AAC3D,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,SAAS,CAO1D;AACD,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,iBAAiB,IAAI;KACpD,CAAC,IAAI,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,kBAAkB,GAAG,SAAS,GACtE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,iBAAiB,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAC3E,KAAK;CACP,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,iBAAiB,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAEzE;AAID,MAAM,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,iBAAiB,IAAI,WAAW,CAClE,UAAU,CAAC,CAAC,CAAC,CACb,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;AAEvE,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,EAC7D,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAClC,OAAO,CAAC,EAAE,mBAAmB,GAC3B,YAAY,CAAC,CAAC,CAAC,CAUjB;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,GAAG,aAAa,CAEvE"}
1
+ {"version":3,"file":"createModeSchema.d.ts","sourceRoot":"","sources":["../src/createModeSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAEN,qBAAqB,EACrB,iBAAiB,EACjB,KAAK,EACL,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAa,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEzD,MAAM,MAAM,kBAAkB,GAAG,qBAAqB,CAAC;AAEvD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;AAC3D,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,SAAS,CAO1D;AACD,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,iBAAiB,IAAI;KACpD,CAAC,IAAI,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,kBAAkB,GAAG,SAAS,GACtE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,iBAAiB,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAC3E,KAAK;CACP,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,iBAAiB,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAEzE;AAID,MAAM,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,iBAAiB,IAAI,WAAW,CAClE,UAAU,CAAC,CAAC,CAAC,CACb,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;AAEvE,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,EAC7D,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAClC,OAAO,CAAC,EAAE,mBAAmB,GAC3B,YAAY,CAAC,CAAC,CAAC,CAUjB;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,GAAG,aAAa,CAEvE;AAED,wBAAgB,UAAU,CACzB,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EACxB,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,GACtB,YAAY,CAAC,GAAG,CAAC,CAkBnB"}
@@ -1,5 +1,6 @@
1
1
  import { isCalcEquation } from '@arbor-css/calc';
2
2
  import { isToken, } from '@arbor-css/tokens';
3
+ import { deepMerge } from '@arbor-css/util';
3
4
  export function isModeValue(value) {
4
5
  return (isCalcEquation(value) ||
5
6
  isToken(value) ||
@@ -24,4 +25,23 @@ export function createModeInstance(name, values, options) {
24
25
  export function getModeInternals(mode) {
25
26
  return mode[INTERNALS];
26
27
  }
28
+ export function mergeModes(modeA, modeB) {
29
+ const values = deepMerge({}, modeA, modeB);
30
+ const internalsA = getModeInternals(modeA);
31
+ const internalsB = getModeInternals(modeB);
32
+ const internals = {
33
+ extraSelectors: [
34
+ ...(internalsA.extraSelectors || []),
35
+ ...(internalsB.extraSelectors || []),
36
+ ],
37
+ extraCss: [internalsA.extraCss, internalsB.extraCss]
38
+ .filter(Boolean)
39
+ .join('\n'),
40
+ name: internalsB.name || internalsA.name, // prefer B's name if it exists
41
+ };
42
+ return {
43
+ ...values,
44
+ [INTERNALS]: internals,
45
+ };
46
+ }
27
47
  //# sourceMappingURL=createModeSchema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createModeSchema.js","sourceRoot":"","sources":["../src/createModeSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EACN,OAAO,GAIP,MAAM,mBAAmB,CAAC;AAM3B,MAAM,UAAU,WAAW,CAAC,KAAU;IACrC,OAAO,CACN,cAAc,CAAC,KAAK,CAAC;QACrB,OAAO,CAAC,KAAK,CAAC;QACd,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,KAAK,KAAK,QAAQ,CACzB,CAAC;AACH,CAAC;AAOD,MAAM,UAAU,gBAAgB,CAA8B,KAAQ;IACrE,OAAO,KAAK,CAAC;AACd,CAAC;AAED,MAAM,SAAS,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAcjD,MAAM,UAAU,kBAAkB,CACjC,IAAY,EACZ,MAAkC,EAClC,OAA6B;IAE7B,MAAM,SAAS,GAAG;QACjB,GAAG,OAAO;QACV,IAAI;KACJ,CAAC;IACF,MAAM,YAAY,GAAG;QACpB,GAAG,MAAM;QACT,CAAC,SAAS,CAAC,EAAE,SAAS;KACtB,CAAC;IACF,OAAO,YAAY,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAuB;IACvD,OAAQ,IAAY,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"createModeSchema.js","sourceRoot":"","sources":["../src/createModeSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EACN,OAAO,GAIP,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAe,MAAM,iBAAiB,CAAC;AAKzD,MAAM,UAAU,WAAW,CAAC,KAAU;IACrC,OAAO,CACN,cAAc,CAAC,KAAK,CAAC;QACrB,OAAO,CAAC,KAAK,CAAC;QACd,OAAO,KAAK,KAAK,QAAQ;QACzB,OAAO,KAAK,KAAK,QAAQ,CACzB,CAAC;AACH,CAAC;AAOD,MAAM,UAAU,gBAAgB,CAA8B,KAAQ;IACrE,OAAO,KAAK,CAAC;AACd,CAAC;AAED,MAAM,SAAS,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAcjD,MAAM,UAAU,kBAAkB,CACjC,IAAY,EACZ,MAAkC,EAClC,OAA6B;IAE7B,MAAM,SAAS,GAAG;QACjB,GAAG,OAAO;QACV,IAAI;KACJ,CAAC;IACF,MAAM,YAAY,GAAG;QACpB,GAAG,MAAM;QACT,CAAC,SAAS,CAAC,EAAE,SAAS;KACtB,CAAC;IACF,OAAO,YAAY,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAuB;IACvD,OAAQ,IAAY,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,UAAU,CACzB,KAAwB,EACxB,KAAwB;IAExB,MAAM,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAkB;QAChC,cAAc,EAAE;YACf,GAAG,CAAC,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC;YACpC,GAAG,CAAC,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC;SACpC;QACD,QAAQ,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC;aAClD,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC;QACZ,IAAI,EAAE,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,EAAE,+BAA+B;KACzE,CAAC;IACF,OAAO;QACN,GAAG,MAAM;QACT,CAAC,SAAS,CAAC,EAAE,SAAS;KACtB,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arbor-css/modes",
3
- "version": "0.0.94",
3
+ "version": "0.0.96",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -25,10 +25,10 @@
25
25
  "vitest": "^4.1.7"
26
26
  },
27
27
  "dependencies": {
28
- "@arbor-css/tokens": "0.0.94",
29
- "@arbor-css/util": "0.0.94",
30
- "@arbor-css/calc": "0.0.94",
31
- "@arbor-css/globals": "0.0.94"
28
+ "@arbor-css/tokens": "0.0.96",
29
+ "@arbor-css/util": "0.0.96",
30
+ "@arbor-css/globals": "0.0.96",
31
+ "@arbor-css/calc": "0.0.96"
32
32
  },
33
33
  "scripts": {
34
34
  "build": "tsc",