@primitiv-ui/harmoni-wasm 0.1.32 → 0.1.33

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/harmoni_wasm.d.ts CHANGED
@@ -218,6 +218,21 @@ export function generate_alpha_ramp_with_steps(anchor: string, steps: number): A
218
218
 
219
219
  export function generate_neutral_ramp(white: string, black: string, tint: TintMode, bow: number): Palette;
220
220
 
221
+ /**
222
+ * Builds a neutral ramp of `steps` steps, so the neutral ramp can match the
223
+ * length of the solid ramps it sits beside — a ten-step neutral against a
224
+ * seven-step brand would otherwise carry two different label sets for one
225
+ * palette. Labels come from the same ladder `generate_palette_with_steps`
226
+ * walks. `steps` outside the range `supported_step_range` reports is rejected
227
+ * rather than clamped.
228
+ *
229
+ * Like every `palette_to_js` entry point, this has no native test:
230
+ * `serde_wasm_bindgen::to_value` needs a JS runtime, so the whole function is
231
+ * unreachable off-target. The step-count and label decisions it forwards are
232
+ * covered where they are actually made — `api::neutral_tests`.
233
+ */
234
+ export function generate_neutral_ramp_with_steps(white: string, black: string, tint: TintMode, bow: number, steps: number): Palette;
235
+
221
236
  export function generate_palette(hex: string, light_padding: number, dark_padding: number): Palette;
222
237
 
223
238
  export function generate_palette_pair(hex: string, light_lightness: Array<any>, dark_lightness: Array<any>, light_padding: number, dark_padding: number): PaletteSet;
@@ -351,6 +366,7 @@ export interface InitOutput {
351
366
  readonly generate_alpha_ramp: (a: number, b: number) => [number, number, number];
352
367
  readonly generate_alpha_ramp_with_steps: (a: number, b: number, c: number) => [number, number, number];
353
368
  readonly generate_neutral_ramp: (a: number, b: number, c: number, d: number, e: any, f: number) => [number, number, number];
369
+ readonly generate_neutral_ramp_with_steps: (a: number, b: number, c: number, d: number, e: any, f: number, g: number) => [number, number, number];
354
370
  readonly generate_palette: (a: number, b: number, c: number, d: number) => [number, number, number];
355
371
  readonly generate_palette_pair: (a: number, b: number, c: any, d: any, e: number, f: number) => [number, number, number];
356
372
  readonly generate_palette_pair_with_curve: (a: number, b: number, c: number, d: number, e: number, f: any) => [number, number, number];
package/harmoni_wasm.js CHANGED
@@ -159,6 +159,37 @@ export function generate_neutral_ramp(white, black, tint, bow) {
159
159
  return takeFromExternrefTable0(ret[0]);
160
160
  }
161
161
 
162
+ /**
163
+ * Builds a neutral ramp of `steps` steps, so the neutral ramp can match the
164
+ * length of the solid ramps it sits beside — a ten-step neutral against a
165
+ * seven-step brand would otherwise carry two different label sets for one
166
+ * palette. Labels come from the same ladder `generate_palette_with_steps`
167
+ * walks. `steps` outside the range `supported_step_range` reports is rejected
168
+ * rather than clamped.
169
+ *
170
+ * Like every `palette_to_js` entry point, this has no native test:
171
+ * `serde_wasm_bindgen::to_value` needs a JS runtime, so the whole function is
172
+ * unreachable off-target. The step-count and label decisions it forwards are
173
+ * covered where they are actually made — `api::neutral_tests`.
174
+ * @param {string} white
175
+ * @param {string} black
176
+ * @param {TintMode} tint
177
+ * @param {number} bow
178
+ * @param {number} steps
179
+ * @returns {Palette}
180
+ */
181
+ export function generate_neutral_ramp_with_steps(white, black, tint, bow, steps) {
182
+ const ptr0 = passStringToWasm0(white, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
183
+ const len0 = WASM_VECTOR_LEN;
184
+ const ptr1 = passStringToWasm0(black, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
185
+ const len1 = WASM_VECTOR_LEN;
186
+ const ret = wasm.generate_neutral_ramp_with_steps(ptr0, len0, ptr1, len1, tint, bow, steps);
187
+ if (ret[2]) {
188
+ throw takeFromExternrefTable0(ret[1]);
189
+ }
190
+ return takeFromExternrefTable0(ret[0]);
191
+ }
192
+
162
193
  /**
163
194
  * @param {string} hex
164
195
  * @param {number} light_padding
Binary file
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@primitiv-ui/harmoni-wasm",
3
3
  "type": "module",
4
4
  "description": "Public wasm-pack build of harmoni-core, the Primitiv palette engine.",
5
- "version": "0.1.32",
5
+ "version": "0.1.33",
6
6
  "license": "MIT",
7
7
  "repository": {
8
8
  "type": "git",