@nordcraft/ssr 1.0.83 → 1.0.85

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.
@@ -42,3 +42,4 @@ export declare const serverEnv: ({ branchName, req, logErrors, }: {
42
42
  req: Request;
43
43
  logErrors: boolean;
44
44
  }) => ToddleServerEnv;
45
+ export declare const getThemeInitialValue: (component: PageComponent, formulaContext: FormulaContext, env: ToddleServerEnv) => string | null;
@@ -38,6 +38,9 @@ export const getPageFormulaContext = ({ branchName, component, req, logErrors, f
38
38
  formulaContext.data.Variables = mapValues(component.variables ?? {}, ({ initialValue }) => {
39
39
  return applyFormula(initialValue, formulaContext);
40
40
  });
41
+ formulaContext.data.Page = {
42
+ Theme: getThemeInitialValue(component, formulaContext, env),
43
+ };
41
44
  return formulaContext;
42
45
  };
43
46
  export const getServerToddleObject = (files) => {
@@ -117,4 +120,15 @@ export const serverEnv = ({ branchName, req, logErrors, }) => ({
117
120
  },
118
121
  logErrors,
119
122
  });
123
+ export const getThemeInitialValue = (component, formulaContext, env) => {
124
+ const themeFormula = component.route.info?.theme?.formula;
125
+ if (themeFormula) {
126
+ return applyFormula(themeFormula, formulaContext);
127
+ }
128
+ else {
129
+ // No theme set explicitly will default to system preference
130
+ // Default theme (or initial value) is handled in CSS
131
+ return env.request.cookies['nc-theme'] || null;
132
+ }
133
+ };
120
134
  //# sourceMappingURL=formulaContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formulaContext.js","sourceRoot":"","sources":["../../src/rendering/formulaContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formulaContext.js","sourceRoot":"","sources":["../../src/rendering/formulaContext.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -21,11 +21,11 @@
21
21
  "main": "dist/index.js",
22
22
  "types": "dist/index.d.ts",
23
23
  "dependencies": {
24
- "@nordcraft/core": "1.0.83",
25
- "@nordcraft/std-lib": "1.0.83",
24
+ "@nordcraft/core": "1.0.85",
25
+ "@nordcraft/std-lib": "1.0.85",
26
26
  "fast-deep-equal": "3.1.3",
27
27
  "cookie": "1.0.2",
28
28
  "xss": "1.0.15"
29
29
  },
30
- "version": "1.0.83"
30
+ "version": "1.0.85"
31
31
  }
@@ -69,6 +69,9 @@ export const getPageFormulaContext = ({
69
69
  return applyFormula(initialValue, formulaContext)
70
70
  },
71
71
  )
72
+ formulaContext.data.Page = {
73
+ Theme: getThemeInitialValue(component, formulaContext, env),
74
+ }
72
75
  return formulaContext
73
76
  }
74
77
 
@@ -191,3 +194,18 @@ export const serverEnv = ({
191
194
  },
192
195
  logErrors,
193
196
  }) as ToddleServerEnv
197
+
198
+ export const getThemeInitialValue = (
199
+ component: PageComponent,
200
+ formulaContext: FormulaContext,
201
+ env: ToddleServerEnv,
202
+ ): string | null => {
203
+ const themeFormula = component.route.info?.theme?.formula
204
+ if (themeFormula) {
205
+ return applyFormula(themeFormula, formulaContext)
206
+ } else {
207
+ // No theme set explicitly will default to system preference
208
+ // Default theme (or initial value) is handled in CSS
209
+ return env.request.cookies['nc-theme'] || null
210
+ }
211
+ }