@bscotch/stitch-config 0.2.0 → 0.3.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/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export * from './schema.js';
2
+ export * from './utils.js';
2
3
  export declare const stitchConfigFilename = "stitch.config.json";
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAE5B,eAAO,MAAM,oBAAoB,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAE3B,eAAO,MAAM,oBAAoB,uBAAuB,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
1
  export * from './schema.js';
2
+ export * from './utils.js';
2
3
  export const stitchConfigFilename = 'stitch.config.json';
3
4
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAE5B,MAAM,CAAC,MAAM,oBAAoB,GAAG,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAE3B,MAAM,CAAC,MAAM,oBAAoB,GAAG,oBAAoB,CAAC"}
package/dist/schema.d.ts CHANGED
@@ -1,5 +1,13 @@
1
1
  import { z } from 'zod';
2
2
  export declare const jsonSchemaUrl = "https://raw.githubusercontent.com/bscotch/stitch/develop/packages/config/schemas/stitch.config.schema.json";
3
+ export type NewSoundDefaults = z.infer<typeof newSoundDefaultsSchema>;
4
+ export declare const newSoundDefaultsSchema: z.ZodObject<{
5
+ mono: z.ZodOptional<z.ZodBoolean>;
6
+ }, "strip", z.ZodTypeAny, {
7
+ mono?: boolean | undefined;
8
+ }, {
9
+ mono?: boolean | undefined;
10
+ }>;
3
11
  export type StitchConfig = z.infer<typeof stitchConfigSchema>;
4
12
  export declare const stitchConfigSchema: z.ZodObject<{
5
13
  $schema: z.ZodDefault<z.ZodLiteral<"https://raw.githubusercontent.com/bscotch/stitch/develop/packages/config/schemas/stitch.config.schema.json">>;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,aAAa,+GACoF,CAAC;AAE/G,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAwD5B,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,aAAa,+GACoF,CAAC;AAE/G,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AACtE,eAAO,MAAM,sBAAsB;;;;;;EAOjC,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCA+C5B,CAAC"}
package/dist/schema.js CHANGED
@@ -4,6 +4,12 @@ const allowedNames = z
4
4
  .optional()
5
5
  .describe('A list of regex patterns that new assets must match. Enforced by supported Stitch utilities.');
6
6
  export const jsonSchemaUrl = 'https://raw.githubusercontent.com/bscotch/stitch/develop/packages/config/schemas/stitch.config.schema.json';
7
+ export const newSoundDefaultsSchema = z.object({
8
+ mono: z
9
+ .boolean()
10
+ .optional()
11
+ .describe('Whether to default new sounds to mono. When not set, the default is stereo.'),
12
+ });
7
13
  export const stitchConfigSchema = z
8
14
  .object({
9
15
  $schema: z.literal(jsonSchemaUrl).default(jsonSchemaUrl),
@@ -28,12 +34,7 @@ export const stitchConfigSchema = z
28
34
  .object({
29
35
  allowedNames,
30
36
  defaults: z
31
- .record(z.object({
32
- mono: z
33
- .boolean()
34
- .optional()
35
- .describe('Whether to default new sounds to mono. When not set, the default is stereo.'),
36
- }))
37
+ .record(newSoundDefaultsSchema)
37
38
  .optional()
38
39
  .describe('Default properties for new sound assets, by name pattern. E.g. `{".*":{ mono: true}}` defaults all new sounds to mono. The first matching pattern is used.'),
39
40
  })
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,YAAY,GAAG,CAAC;KACnB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KACjB,QAAQ,EAAE;KACV,QAAQ,CACP,8FAA8F,CAC/F,CAAC;AACJ,MAAM,CAAC,MAAM,aAAa,GACxB,4GAA4G,CAAC;AAG/G,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACxD,uBAAuB,EAAE,CAAC;SACvB,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SAClB,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,8KAA8K,CAC/K;IACH,qBAAqB,EAAE,CAAC;SACrB,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SAClB,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,yKAAyK,CAC1K;IACH,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,8FAA8F,CAC/F;IACH,cAAc,EAAE,CAAC;SACd,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;SACxB,WAAW,EAAE;SACb,QAAQ,EAAE;SACV,QAAQ,CACP,kFAAkF,CACnF;IACH,aAAa,EAAE,CAAC;SACb,MAAM,CAAC;QACN,YAAY;QACZ,QAAQ,EAAE,CAAC;aACR,MAAM,CACL,CAAC,CAAC,MAAM,CAAC;YACP,IAAI,EAAE,CAAC;iBACJ,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,QAAQ,CACP,6EAA6E,CAC9E;SACJ,CAAC,CACH;aACA,QAAQ,EAAE;aACV,QAAQ,CACP,4JAA4J,CAC7J;KACJ,CAAC;SACD,WAAW,EAAE;SACb,QAAQ,EAAE;SACV,QAAQ,CACP,iFAAiF,CAClF;CACJ,CAAC;KACD,WAAW,EAAE;KACb,QAAQ,CACP,0FAA0F,CAC3F,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,YAAY,GAAG,CAAC;KACnB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KACjB,QAAQ,EAAE;KACV,QAAQ,CACP,8FAA8F,CAC/F,CAAC;AACJ,MAAM,CAAC,MAAM,aAAa,GACxB,4GAA4G,CAAC;AAG/G,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,IAAI,EAAE,CAAC;SACJ,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CACP,6EAA6E,CAC9E;CACJ,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACxD,uBAAuB,EAAE,CAAC;SACvB,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SAClB,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,8KAA8K,CAC/K;IACH,qBAAqB,EAAE,CAAC;SACrB,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SAClB,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,yKAAyK,CAC1K;IACH,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,8FAA8F,CAC/F;IACH,cAAc,EAAE,CAAC;SACd,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;SACxB,WAAW,EAAE;SACb,QAAQ,EAAE;SACV,QAAQ,CACP,kFAAkF,CACnF;IACH,aAAa,EAAE,CAAC;SACb,MAAM,CAAC;QACN,YAAY;QACZ,QAAQ,EAAE,CAAC;aACR,MAAM,CAAC,sBAAsB,CAAC;aAC9B,QAAQ,EAAE;aACV,QAAQ,CACP,4JAA4J,CAC7J;KACJ,CAAC;SACD,WAAW,EAAE;SACb,QAAQ,EAAE;SACV,QAAQ,CACP,iFAAiF,CAClF;CACJ,CAAC;KACD,WAAW,EAAE;KACb,QAAQ,CACP,0FAA0F,CAC3F,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { NewSoundDefaults, StitchConfig } from './schema.js';
2
+ export declare function isValidSoundName(name: string, config: StitchConfig): boolean;
3
+ export declare function isValidSpriteName(name: string, config: StitchConfig): boolean;
4
+ export declare function getDefaultsForNewSound(name: string, config: StitchConfig): NewSoundDefaults | undefined;
5
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAElE,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAM5E;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAM7E;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,YAAY,GACnB,gBAAgB,GAAG,SAAS,CAU9B"}
package/dist/utils.js ADDED
@@ -0,0 +1,29 @@
1
+ export function isValidSoundName(name, config) {
2
+ const allowedNames = config?.newSoundRules?.allowedNames;
3
+ if (!allowedNames?.length)
4
+ return true;
5
+ if (allowedNames.some((pattern) => name.match(new RegExp(pattern))))
6
+ return true;
7
+ return false;
8
+ }
9
+ export function isValidSpriteName(name, config) {
10
+ const allowedNames = config?.newSpriteRules?.allowedNames;
11
+ if (!allowedNames?.length)
12
+ return true;
13
+ if (allowedNames.some((pattern) => name.match(new RegExp(pattern))))
14
+ return true;
15
+ return false;
16
+ }
17
+ export function getDefaultsForNewSound(name, config) {
18
+ const defaults = config?.newSoundRules?.defaults;
19
+ if (!defaults)
20
+ return;
21
+ const patterns = Object.keys(defaults);
22
+ for (const pattern of patterns) {
23
+ if (name.match(new RegExp(pattern))) {
24
+ return defaults[pattern];
25
+ }
26
+ }
27
+ return {};
28
+ }
29
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,MAAoB;IACjE,MAAM,YAAY,GAAG,MAAM,EAAE,aAAa,EAAE,YAAY,CAAC;IACzD,IAAI,CAAC,YAAY,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACvC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,MAAoB;IAClE,MAAM,YAAY,GAAG,MAAM,EAAE,cAAc,EAAE,YAAY,CAAC;IAC1D,IAAI,CAAC,YAAY,EAAE,MAAM;QAAE,OAAO,IAAI,CAAC;IACvC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,IAAY,EACZ,MAAoB;IAEpB,MAAM,QAAQ,GAAG,MAAM,EAAE,aAAa,EAAE,QAAQ,CAAC;IACjD,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YACpC,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bscotch/stitch-config",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Schemas and utilities for the stitch.config.json file.",
5
5
  "keywords": [
6
6
  "stitch",