@sundaeswap/sprinkles 0.5.0 → 0.6.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.
Files changed (112) hide show
  1. package/dist/cjs/Sprinkle/__tests__/encryption.test.js +3 -1
  2. package/dist/cjs/Sprinkle/__tests__/encryption.test.js.map +1 -1
  3. package/dist/cjs/Sprinkle/__tests__/enhancements.test.js +3 -37
  4. package/dist/cjs/Sprinkle/__tests__/enhancements.test.js.map +1 -1
  5. package/dist/cjs/Sprinkle/__tests__/field-utils.test.js +170 -0
  6. package/dist/cjs/Sprinkle/__tests__/field-utils.test.js.map +1 -0
  7. package/dist/cjs/Sprinkle/__tests__/fill-in-struct.test.js +242 -87
  8. package/dist/cjs/Sprinkle/__tests__/fill-in-struct.test.js.map +1 -1
  9. package/dist/cjs/Sprinkle/__tests__/formatting.test.js +97 -0
  10. package/dist/cjs/Sprinkle/__tests__/formatting.test.js.map +1 -0
  11. package/dist/cjs/Sprinkle/__tests__/show-menu.test.js +9 -5
  12. package/dist/cjs/Sprinkle/__tests__/show-menu.test.js.map +1 -1
  13. package/dist/cjs/Sprinkle/__tests__/tx-dialog.test.js +9 -0
  14. package/dist/cjs/Sprinkle/__tests__/tx-dialog.test.js.map +1 -1
  15. package/dist/cjs/Sprinkle/index.js +135 -91
  16. package/dist/cjs/Sprinkle/index.js.map +1 -1
  17. package/dist/cjs/Sprinkle/menus/array-menu.js +195 -0
  18. package/dist/cjs/Sprinkle/menus/array-menu.js.map +1 -0
  19. package/dist/cjs/Sprinkle/menus/field-menu.js +161 -0
  20. package/dist/cjs/Sprinkle/menus/field-menu.js.map +1 -0
  21. package/dist/cjs/Sprinkle/menus/index.js +33 -0
  22. package/dist/cjs/Sprinkle/menus/index.js.map +1 -0
  23. package/dist/cjs/Sprinkle/menus/object-menu.js +324 -0
  24. package/dist/cjs/Sprinkle/menus/object-menu.js.map +1 -0
  25. package/dist/cjs/Sprinkle/prompts.js +68 -2
  26. package/dist/cjs/Sprinkle/prompts.js.map +1 -1
  27. package/dist/cjs/Sprinkle/type-guards.js +48 -1
  28. package/dist/cjs/Sprinkle/type-guards.js.map +1 -1
  29. package/dist/cjs/Sprinkle/types.js +24 -0
  30. package/dist/cjs/Sprinkle/types.js.map +1 -1
  31. package/dist/cjs/Sprinkle/utils/field-utils.js +154 -0
  32. package/dist/cjs/Sprinkle/utils/field-utils.js.map +1 -0
  33. package/dist/cjs/Sprinkle/utils/formatting.js +126 -0
  34. package/dist/cjs/Sprinkle/utils/formatting.js.map +1 -0
  35. package/dist/cjs/Sprinkle/utils/index.js +56 -0
  36. package/dist/cjs/Sprinkle/utils/index.js.map +1 -0
  37. package/dist/esm/Sprinkle/__tests__/encryption.test.js +3 -1
  38. package/dist/esm/Sprinkle/__tests__/encryption.test.js.map +1 -1
  39. package/dist/esm/Sprinkle/__tests__/enhancements.test.js +3 -37
  40. package/dist/esm/Sprinkle/__tests__/enhancements.test.js.map +1 -1
  41. package/dist/esm/Sprinkle/__tests__/field-utils.test.js +168 -0
  42. package/dist/esm/Sprinkle/__tests__/field-utils.test.js.map +1 -0
  43. package/dist/esm/Sprinkle/__tests__/fill-in-struct.test.js +243 -88
  44. package/dist/esm/Sprinkle/__tests__/fill-in-struct.test.js.map +1 -1
  45. package/dist/esm/Sprinkle/__tests__/formatting.test.js +95 -0
  46. package/dist/esm/Sprinkle/__tests__/formatting.test.js.map +1 -0
  47. package/dist/esm/Sprinkle/__tests__/show-menu.test.js +9 -5
  48. package/dist/esm/Sprinkle/__tests__/show-menu.test.js.map +1 -1
  49. package/dist/esm/Sprinkle/__tests__/tx-dialog.test.js +9 -0
  50. package/dist/esm/Sprinkle/__tests__/tx-dialog.test.js.map +1 -1
  51. package/dist/esm/Sprinkle/index.js +102 -93
  52. package/dist/esm/Sprinkle/index.js.map +1 -1
  53. package/dist/esm/Sprinkle/menus/array-menu.js +190 -0
  54. package/dist/esm/Sprinkle/menus/array-menu.js.map +1 -0
  55. package/dist/esm/Sprinkle/menus/field-menu.js +155 -0
  56. package/dist/esm/Sprinkle/menus/field-menu.js.map +1 -0
  57. package/dist/esm/Sprinkle/menus/index.js +8 -0
  58. package/dist/esm/Sprinkle/menus/index.js.map +1 -0
  59. package/dist/esm/Sprinkle/menus/object-menu.js +318 -0
  60. package/dist/esm/Sprinkle/menus/object-menu.js.map +1 -0
  61. package/dist/esm/Sprinkle/prompts.js +59 -1
  62. package/dist/esm/Sprinkle/prompts.js.map +1 -1
  63. package/dist/esm/Sprinkle/type-guards.js +42 -0
  64. package/dist/esm/Sprinkle/type-guards.js.map +1 -1
  65. package/dist/esm/Sprinkle/types.js +24 -0
  66. package/dist/esm/Sprinkle/types.js.map +1 -1
  67. package/dist/esm/Sprinkle/utils/field-utils.js +145 -0
  68. package/dist/esm/Sprinkle/utils/field-utils.js.map +1 -0
  69. package/dist/esm/Sprinkle/utils/formatting.js +118 -0
  70. package/dist/esm/Sprinkle/utils/formatting.js.map +1 -0
  71. package/dist/esm/Sprinkle/utils/index.js +7 -0
  72. package/dist/esm/Sprinkle/utils/index.js.map +1 -0
  73. package/dist/types/Sprinkle/index.d.ts +9 -3
  74. package/dist/types/Sprinkle/index.d.ts.map +1 -1
  75. package/dist/types/Sprinkle/menus/array-menu.d.ts +31 -0
  76. package/dist/types/Sprinkle/menus/array-menu.d.ts.map +1 -0
  77. package/dist/types/Sprinkle/menus/field-menu.d.ts +34 -0
  78. package/dist/types/Sprinkle/menus/field-menu.d.ts.map +1 -0
  79. package/dist/types/Sprinkle/menus/index.d.ts +10 -0
  80. package/dist/types/Sprinkle/menus/index.d.ts.map +1 -0
  81. package/dist/types/Sprinkle/menus/object-menu.d.ts +34 -0
  82. package/dist/types/Sprinkle/menus/object-menu.d.ts.map +1 -0
  83. package/dist/types/Sprinkle/prompts.d.ts +25 -0
  84. package/dist/types/Sprinkle/prompts.d.ts.map +1 -1
  85. package/dist/types/Sprinkle/type-guards.d.ts +24 -1
  86. package/dist/types/Sprinkle/type-guards.d.ts.map +1 -1
  87. package/dist/types/Sprinkle/types.d.ts +53 -0
  88. package/dist/types/Sprinkle/types.d.ts.map +1 -1
  89. package/dist/types/Sprinkle/utils/field-utils.d.ts +47 -0
  90. package/dist/types/Sprinkle/utils/field-utils.d.ts.map +1 -0
  91. package/dist/types/Sprinkle/utils/formatting.d.ts +30 -0
  92. package/dist/types/Sprinkle/utils/formatting.d.ts.map +1 -0
  93. package/dist/types/tsconfig.build.tsbuildinfo +1 -1
  94. package/package.json +1 -1
  95. package/src/Sprinkle/__tests__/encryption.test.ts +2 -0
  96. package/src/Sprinkle/__tests__/enhancements.test.ts +3 -42
  97. package/src/Sprinkle/__tests__/field-utils.test.ts +191 -0
  98. package/src/Sprinkle/__tests__/fill-in-struct.test.ts +252 -103
  99. package/src/Sprinkle/__tests__/formatting.test.ts +115 -0
  100. package/src/Sprinkle/__tests__/show-menu.test.ts +14 -8
  101. package/src/Sprinkle/__tests__/tx-dialog.test.ts +9 -0
  102. package/src/Sprinkle/index.ts +131 -119
  103. package/src/Sprinkle/menus/array-menu.ts +191 -0
  104. package/src/Sprinkle/menus/field-menu.ts +145 -0
  105. package/src/Sprinkle/menus/index.ts +12 -0
  106. package/src/Sprinkle/menus/object-menu.ts +336 -0
  107. package/src/Sprinkle/prompts.ts +71 -1
  108. package/src/Sprinkle/type-guards.ts +42 -0
  109. package/src/Sprinkle/types.ts +43 -0
  110. package/src/Sprinkle/utils/field-utils.ts +158 -0
  111. package/src/Sprinkle/utils/formatting.ts +127 -0
  112. package/src/Sprinkle/utils/index.ts +17 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Sprinkle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,KAAK,EACL,IAAI,EAEJ,KAAK,MAAM,EACZ,MAAM,oBAAoB,CAAC;AAU5B,OAAO,EAAE,KAAK,OAAO,EAAsB,MAAM,mBAAmB,CAAC;AAGrE,cAAc,mBAAmB,CAAC;AAGlC,YAAY,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,aAAa,EACb,cAAc,EACd,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EACV,MAAM,EAEN,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,aAAa,EACb,cAAc,EACd,eAAe,EAChB,MAAM,YAAY,CAAC;AAIpB,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAiBpD,OAAO,EACL,UAAU,EACV,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,MAAM,EACN,OAAO,EACP,OAAO,EACP,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,cAAc,CAAC;AAStB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAyB/D,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,OAAO;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;CAChE;AACD,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;AACrE,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS,OAAO;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IACtB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACvD;AAED,qBAAa,QAAQ,CAAC,CAAC,SAAS,OAAO;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAmB;IACtC,IAAI,EAAE,CAAC,CAAC;IACR,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACvC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAM;IACvB,WAAW,EAAE,YAAY,CAA8C;gBAE3D,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB;IAQpE,IAAI,cAAc,IAAI,eAAe,GAAG,IAAI,CAM3C;IAID,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAW9C,OAAO,CAAC,MAAM,CAAC,WAAW;IAI1B,OAAO,CAAC,MAAM,CAAC,WAAW;IAO1B,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAIhC,OAAO,CAAC,MAAM,CAAC,eAAe;IAY9B,YAAY,IAAI,aAAa,EAAE;IAsBzB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY5C,OAAO,CAAC,WAAW;YAyBL,iBAAiB;YAkBjB,aAAa;YAqCb,eAAe;YAsCf,qBAAqB;YA2BrB,aAAa;YAiBb,gBAAgB;YAgChB,aAAa;YAoCb,aAAa;IAwCrB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;YAI/B,SAAS;WA2GV,GAAG,CAAC,CAAC,SAAS,OAAO,EAChC,IAAI,EAAE,CAAC,EACP,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;WAQV,WAAW,CACtB,OAAO,EAAE,MAAM,CAAC,OAAO,aAAa,CAAC,EACrC,QAAQ,EAAE,MAAM,CAAC,OAAO,sBAAsB,CAAC,GAC9C,OAAO,CAAC,QAAQ,CAAC;WAIP,SAAS,CACpB,QAAQ,EAAE,MAAM,CAAC,OAAO,oBAAoB,CAAC,EAC7C,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,MAAM,CAAC;WAIL,QAAQ,CACnB,OAAO,EAAE,MAAM,CAAC,OAAO,aAAa,CAAC,EACrC,gBAAgB,EAAE,MAAM,CAAC,OAAO,sBAAsB,CAAC,EACvD,cAAc,EAAE,MAAM,CAAC,OAAO,oBAAoB,CAAC,GAClD,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAInC;;;;OAIG;mBACkB,0BAA0B;WAIlC,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE;QACjC,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,CACN,IAAI,EAAE,MAAM,GAAG,SAAS,KACrB,OAAO,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,CAAC,CAAA;SAAE,EAAE,CAAC,GAAG;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,CAAC,CAAA;SAAE,EAAE,CAAC;KAC3E,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAIrB,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAI1C,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB/D,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO;IAI1D,OAAO,CAAC,eAAe;YAKT,eAAe;IAK7B,YAAY,IAAI,IAAI;IAIpB,kBAAkB,IAAI,MAAM,CAAC,CAAC,CAAC;IAIzB,QAAQ,CAAC,CAAC,SAAS,QAAQ,EAAE,CAAC,SAAS,MAAM,EACjD,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAClB,EAAE,EAAE,IAAI,CAAC,WAAW,EACpB,IAAI,CAAC,EAAE,eAAe,GACrB,OAAO,CAAC,cAAc,CAAC;IA2RpB,UAAU,CAAC,CAAC,SAAS,OAAO,EAChC,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,GACjB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAIf,WAAW,CAAC,CAAC,SAAS,OAAO,EACjC,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,GAClB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAqDf,YAAY,CAAC,CAAC,SAAS,OAAO,EAClC,IAAI,EAAE,CAAC,EACP,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,GACd,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAIf,aAAa,CAAC,CAAC,SAAS,OAAO,EACnC,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,GACd,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAyMrB,WAAW,CAAC,CAAC,SAAS,OAAO,EAC3B,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,CAAC;IAcJ,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;CA0B1D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Sprinkle/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Array menu module for menu-based struct editing.
3
+ * Shows array items and allows adding/removing/editing.
4
+ */
5
+ import type { TArray, TSchema } from "@sinclair/typebox";
6
+ import type { ArrayMenuResult } from "../types.js";
7
+ import type { FillFunction } from "./object-menu.js";
8
+ /**
9
+ * Options for the array menu prompt.
10
+ */
11
+ export interface ArrayMenuOptions {
12
+ /** The array schema */
13
+ type: TArray;
14
+ /** Current path for display */
15
+ path: string[];
16
+ /** Type definitions for resolving refs */
17
+ defs: Record<string, TSchema>;
18
+ /** Existing array values */
19
+ defaults?: unknown[];
20
+ /** Function to fill individual items */
21
+ fillField: FillFunction;
22
+ }
23
+ /**
24
+ * Show a menu-based editor for an array.
25
+ * Allows adding, removing, and editing items.
26
+ *
27
+ * @param options - Array menu options
28
+ * @returns The edited array or back result
29
+ */
30
+ export declare function promptArray<T>(options: ArrayMenuOptions): Promise<ArrayMenuResult<T>>;
31
+ //# sourceMappingURL=array-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array-menu.d.ts","sourceRoot":"","sources":["../../../../src/Sprinkle/menus/array-menu.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,KAAK,EAAE,eAAe,EAAc,MAAM,aAAa,CAAC;AAI/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,wCAAwC;IACxC,SAAS,EAAE,YAAY,CAAC;CACzB;AAED;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,CAAC,EACjC,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAuJ7B"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Field menu module for menu-based struct editing.
3
+ * Handles the sub-menu shown when selecting a field with an existing value.
4
+ */
5
+ import type { TSchema } from "@sinclair/typebox";
6
+ import type { FieldMenuResult, FieldState } from "../types.js";
7
+ /**
8
+ * Options for the field menu prompt.
9
+ */
10
+ export interface FieldMenuOptions<T> {
11
+ /** The field name */
12
+ fieldName: string;
13
+ /** The field's schema */
14
+ fieldType: TSchema;
15
+ /** Current state of the field */
16
+ state: FieldState<T>;
17
+ }
18
+ /**
19
+ * Show a sub-menu for a field that has a value.
20
+ * Provides options to edit, view, clear, set null, or reset to default.
21
+ *
22
+ * @param options - Field menu options
23
+ * @returns The user's chosen action
24
+ */
25
+ export declare function promptFieldMenu<T>(options: FieldMenuOptions<T>): Promise<FieldMenuResult<T>>;
26
+ /**
27
+ * Display the full value of a field.
28
+ * Shows formatted JSON and waits for user to press Enter.
29
+ *
30
+ * @param fieldName - The field name
31
+ * @param value - The value to display
32
+ */
33
+ export declare function displayFullValue(fieldName: string, value: unknown): Promise<void>;
34
+ //# sourceMappingURL=field-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field-menu.d.ts","sourceRoot":"","sources":["../../../../src/Sprinkle/menus/field-menu.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAK/D;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,iCAAiC;IACjC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;CACtB;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CAAC,CAAC,EACrC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAC3B,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CA+E7B;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,IAAI,CAAC,CAmBf"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Menu modules for menu-based struct editing.
3
+ */
4
+ export { promptFieldMenu, displayFullValue } from "./field-menu.js";
5
+ export type { FieldMenuOptions } from "./field-menu.js";
6
+ export { promptObject } from "./object-menu.js";
7
+ export type { ObjectMenuOptions, FillFunction } from "./object-menu.js";
8
+ export { promptArray } from "./array-menu.js";
9
+ export type { ArrayMenuOptions } from "./array-menu.js";
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Sprinkle/menus/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACpE,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,YAAY,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAExE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,YAAY,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Object menu module for menu-based struct editing.
3
+ * Shows all fields of an object and allows non-linear editing.
4
+ */
5
+ import type { TObject, TSchema } from "@sinclair/typebox";
6
+ import type { ObjectMenuResult } from "../types.js";
7
+ /**
8
+ * Type for the fill function that handles individual field types.
9
+ */
10
+ export type FillFunction = <U extends TSchema>(type: U, path: string[], defs: Record<string, TSchema>, def?: unknown) => Promise<unknown>;
11
+ /**
12
+ * Options for the object menu prompt.
13
+ */
14
+ export interface ObjectMenuOptions {
15
+ /** The object schema */
16
+ type: TObject;
17
+ /** Current path for display */
18
+ path: string[];
19
+ /** Type definitions for resolving refs */
20
+ defs: Record<string, TSchema>;
21
+ /** Default/existing values */
22
+ defaults?: Record<string, unknown>;
23
+ /** Function to fill individual fields */
24
+ fillField: FillFunction;
25
+ }
26
+ /**
27
+ * Show a menu-based editor for an object.
28
+ * Allows non-linear editing of fields with Submit/Cancel.
29
+ *
30
+ * @param options - Object menu options
31
+ * @returns The edited object or cancel result
32
+ */
33
+ export declare function promptObject<T extends Record<string, unknown>>(options: ObjectMenuOptions): Promise<ObjectMenuResult<T>>;
34
+ //# sourceMappingURL=object-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-menu.d.ts","sourceRoot":"","sources":["../../../../src/Sprinkle/menus/object-menu.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG1D,OAAO,KAAK,EAAc,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAahE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,SAAS,OAAO,EAC3C,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,CAAC,EAAE,OAAO,KACV,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,wBAAwB;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,+BAA+B;IAC/B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,yCAAyC;IACzC,SAAS,EAAE,YAAY,CAAC;CACzB;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClE,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CA2O9B"}
@@ -35,6 +35,31 @@ interface SelectConfig<T> {
35
35
  * Returns null if user presses Escape.
36
36
  */
37
37
  export declare const selectCancellable: import("@inquirer/type").Prompt<unknown, SelectConfig<unknown>>;
38
+ /**
39
+ * Clears N lines above the cursor.
40
+ * Used after prompts to clean up menu output.
41
+ */
42
+ export declare function clearLines(count: number): void;
43
+ /**
44
+ * Select prompt that clears its output after completion.
45
+ * Returns the selected value or null if cancelled.
46
+ */
47
+ export declare function selectWithClear<T>(config: SelectConfig<T>): Promise<T | null>;
48
+ /**
49
+ * Input prompt that clears its output after completion.
50
+ * Returns the input value or null if cancelled.
51
+ */
52
+ export declare function inputWithClear(config: InputConfig): Promise<string | null>;
53
+ /**
54
+ * Password prompt that clears its output after completion.
55
+ * Returns the password or null if cancelled.
56
+ */
57
+ export declare function passwordWithClear(config: PasswordConfig): Promise<string | null>;
58
+ /**
59
+ * Confirm prompt that clears its output after completion.
60
+ * Returns true/false or null if cancelled.
61
+ */
62
+ export declare function confirmWithClear(config: ConfirmConfig): Promise<boolean | null>;
38
63
  interface InputConfig {
39
64
  message: string;
40
65
  default?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/Sprinkle/prompts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAYL,SAAS,EAET,KAAK,KAAK,EACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAQlD,QAAA,MAAM,WAAW;;;;;yBAGI,MAAM;4BACH,MAAM;;;;CAI7B,CAAC;AASF,UAAU,YAAY,CAAC,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;IACT,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC7B;AAED,UAAU,YAAY,CAAC,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,MAAM,CAAC,CAAC;IAC7D,OAAO,CAAC,EAAE,CAAC,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC,CAAC;CAChD;AA8BD;;;GAGG;AACH,eAAO,MAAM,iBAAiB,iEA4G5B,CAAC;AAEH,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,MAAM,CAAC;IACvE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;CAC5E;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,6DAsD5B,CAAC;AAEF,UAAU,cAAc;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC;CAC5E;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,gEAmD/B,CAAC;AAEF,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,gEAuC9B,CAAC;AAEF;;;GAGG;AACH,wBAAsB,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAE1E;AAED,UAAU,YAAY,CAAC,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,CACN,IAAI,EAAE,MAAM,GAAG,SAAS,KACrB,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,CAAC,CAAA;KAAE,EAAE,CAAC,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,CAAC,CAAA;KAAE,EAAE,CAAC;CAC3E;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,iEAyE7B,CAAC"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../src/Sprinkle/prompts.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * Type guard utilities for TypeBox schema types.
3
3
  * These are internal helpers used by FillInStruct, encryption, and other modules.
4
4
  */
5
- import { type TBigInt, type TLiteral, type TObject, type TSchema, type TString, type TTuple, type TUnion, type TArray, type TThis, type TRef, type TImport, type TOptional } from "@sinclair/typebox";
5
+ import { type TBigInt, type TLiteral, type TNull, type TObject, type TSchema, type TString, type TTuple, type TUnion, type TArray, type TThis, type TRef, type TImport, type TOptional, type Static } from "@sinclair/typebox";
6
6
  export declare const isOptional: <T extends TSchema>(t: T) => t is TOptional<T>;
7
7
  export declare const isImport: (t: TSchema) => t is TImport;
8
8
  export declare const isArray: (t: TSchema) => t is TArray;
@@ -19,4 +19,27 @@ export declare const isUnion: (t: TSchema) => t is TUnion;
19
19
  * Sensitive fields are encrypted when saved and masked when displayed.
20
20
  */
21
21
  export declare const isSensitive: (t: TSchema) => boolean;
22
+ /**
23
+ * Check if a schema is a Null type.
24
+ */
25
+ export declare const isNull: (t: TSchema) => t is TNull;
26
+ /**
27
+ * Check if a schema allows null values.
28
+ * Returns true for TNull or unions containing TNull.
29
+ */
30
+ export declare const isNullable: (t: TSchema) => boolean;
31
+ /**
32
+ * Unwrap a nullable type to get the non-null inner type.
33
+ * For unions with Null, returns the union without the Null member.
34
+ * For single non-null member unions, returns just that type.
35
+ */
36
+ export declare const unwrapNullable: (t: TSchema) => TSchema;
37
+ /**
38
+ * Check if a schema has a default value defined.
39
+ */
40
+ export declare const hasDefault: (t: TSchema) => boolean;
41
+ /**
42
+ * Get the default value from a schema, if defined.
43
+ */
44
+ export declare const getDefault: <T extends TSchema>(t: T) => Static<T> | undefined;
22
45
  //# sourceMappingURL=type-guards.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-guards.d.ts","sourceRoot":"","sources":["../../../src/Sprinkle/type-guards.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,MAAM,EACX,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,IAAI,EACT,KAAK,OAAO,EACZ,KAAK,SAAS,EAEf,MAAM,mBAAmB,CAAC;AAE3B,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,OAAO,EAAE,GAAG,CAAC,KAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CACrC,CAAC;AAEjC,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAA+B,CAAC;AAE3E,eAAO,MAAM,OAAO,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAA6B,CAAC;AAExE,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAA+B,CAAC;AAE3E,eAAO,MAAM,SAAS,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,QAAiC,CAAC;AAE9E,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAA+B,CAAC;AAE3E,eAAO,MAAM,KAAK,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,IAAyB,CAAC;AAElE,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAA+B,CAAC;AAE3E,eAAO,MAAM,MAAM,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,KAA2B,CAAC;AAErE,eAAO,MAAM,OAAO,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAA6B,CAAC;AAExE,eAAO,MAAM,OAAO,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAA6B,CAAC;AAExE;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,GAAG,OAAO,KAAG,OACJ,CAAC"}
1
+ {"version":3,"file":"type-guards.d.ts","sourceRoot":"","sources":["../../../src/Sprinkle/type-guards.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,MAAM,EACX,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,IAAI,EACT,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,MAAM,EAEZ,MAAM,mBAAmB,CAAC;AAE3B,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,OAAO,EAAE,GAAG,CAAC,KAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CACrC,CAAC;AAEjC,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAA+B,CAAC;AAE3E,eAAO,MAAM,OAAO,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAA6B,CAAC;AAExE,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAA+B,CAAC;AAE3E,eAAO,MAAM,SAAS,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,QAAiC,CAAC;AAE9E,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAA+B,CAAC;AAE3E,eAAO,MAAM,KAAK,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,IAAyB,CAAC;AAElE,eAAO,MAAM,QAAQ,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAA+B,CAAC;AAE3E,eAAO,MAAM,MAAM,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,KAA2B,CAAC;AAErE,eAAO,MAAM,OAAO,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAA6B,CAAC;AAExE,eAAO,MAAM,OAAO,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,MAA6B,CAAC;AAExE;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,GAAG,OAAO,KAAG,OACJ,CAAC;AAEtC;;GAEG;AACH,eAAO,MAAM,MAAM,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,KAA2B,CAAC;AAErE;;;GAGG;AACH,eAAO,MAAM,UAAU,GAAI,GAAG,OAAO,KAAG,OAIvC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,GAAI,GAAG,OAAO,KAAG,OAO3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,GAAG,OAAO,KAAG,OAAyB,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,OAAO,EAAE,GAAG,CAAC,KAAG,MAAM,CAAC,CAAC,CAAC,GAAG,SAC7B,CAAC"}
@@ -59,4 +59,57 @@ export interface TxDialogOptions {
59
59
  export declare class UserCancelledError extends Error {
60
60
  constructor(message?: string);
61
61
  }
62
+ /**
63
+ * State tracking for a single field during menu-based editing.
64
+ */
65
+ export type FieldState<T = unknown> = {
66
+ status: "unset";
67
+ } | {
68
+ status: "set";
69
+ value: T;
70
+ } | {
71
+ status: "null";
72
+ };
73
+ /**
74
+ * Result of counting required fields in a schema.
75
+ */
76
+ export interface RequiredFieldCount {
77
+ total: number;
78
+ filled: number;
79
+ }
80
+ /**
81
+ * Result from field menu interaction.
82
+ */
83
+ export type FieldMenuResult<T = unknown> = {
84
+ action: "edit";
85
+ } | {
86
+ action: "view";
87
+ } | {
88
+ action: "clear";
89
+ } | {
90
+ action: "setNull";
91
+ } | {
92
+ action: "reset";
93
+ defaultValue: T;
94
+ } | {
95
+ action: "back";
96
+ };
97
+ /**
98
+ * Result from object menu interaction.
99
+ */
100
+ export type ObjectMenuResult<T = unknown> = {
101
+ action: "submit";
102
+ value: T;
103
+ } | {
104
+ action: "cancel";
105
+ };
106
+ /**
107
+ * Result from array menu interaction.
108
+ */
109
+ export type ArrayMenuResult<T = unknown> = {
110
+ action: "done";
111
+ value: T[];
112
+ } | {
113
+ action: "back";
114
+ };
62
115
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/Sprinkle/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAClD;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,kBAAkB,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,GAAE,MAAuC;CAI7D"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/Sprinkle/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAClD;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,CAAC,EAAE,kBAAkB,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,GAAE,MAAuC;CAI7D;AAID;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,GAAG,OAAO,IAC9B;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GACnB;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAC3B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvB;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,OAAO,IACnC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GACnB;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,GACrB;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,CAAC,CAAA;CAAE,GACpC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvB;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,GAAG,OAAO,IACpC;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAC9B;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEzB;;GAEG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,OAAO,IACnC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,EAAE,CAAA;CAAE,GAC9B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Field utilities for menu-based struct editing.
3
+ * Provides required field counting and label building.
4
+ */
5
+ import type { TObject, TSchema } from "@sinclair/typebox";
6
+ import type { FieldState, RequiredFieldCount } from "../types.js";
7
+ /**
8
+ * Count required fields in an object schema and how many are filled.
9
+ *
10
+ * @param type - The object schema
11
+ * @param state - Map of field names to their current state
12
+ * @returns Count of total required fields and how many are filled
13
+ */
14
+ export declare function countRequiredFields(type: TObject, state: Map<string, FieldState>): RequiredFieldCount;
15
+ /**
16
+ * Determine if a field is required (must have a value to submit).
17
+ *
18
+ * @param fieldType - The field's schema
19
+ * @returns true if the field is required
20
+ */
21
+ export declare function isFieldRequired(fieldType: TSchema): boolean;
22
+ /**
23
+ * Build a display label for a field in the menu.
24
+ *
25
+ * @param fieldName - The field name
26
+ * @param fieldType - The field's schema
27
+ * @param state - The current state of the field
28
+ * @returns Formatted label string
29
+ */
30
+ export declare function buildFieldLabel(fieldName: string, fieldType: TSchema, state: FieldState): string;
31
+ /**
32
+ * Get the initial FieldState for a field based on its type and any existing value.
33
+ *
34
+ * @param _fieldType - The field's schema (reserved for future logic)
35
+ * @param existingValue - Existing value if editing
36
+ * @returns Initial FieldState
37
+ */
38
+ export declare function getInitialFieldState<T>(_fieldType: TSchema, existingValue?: T): FieldState<T>;
39
+ /**
40
+ * Check if all required fields are filled in the state map.
41
+ *
42
+ * @param type - The object schema
43
+ * @param state - Map of field names to their current state
44
+ * @returns true if all required fields have values
45
+ */
46
+ export declare function allRequiredFieldsFilled(type: TObject, state: Map<string, FieldState>): boolean;
47
+ //# sourceMappingURL=field-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field-utils.d.ts","sourceRoot":"","sources":["../../../../src/Sprinkle/utils/field-utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAUlE;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAC7B,kBAAkB,CAgCpB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAiB3D;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,OAAO,EAClB,KAAK,EAAE,UAAU,GAChB,MAAM,CAuBR;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EACpC,UAAU,EAAE,OAAO,EACnB,aAAa,CAAC,EAAE,CAAC,GAChB,UAAU,CAAC,CAAC,CAAC,CAUf;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAC7B,OAAO,CAGT"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Formatting utilities for menu-based struct editing.
3
+ * Provides value preview, path formatting, and breadcrumb generation.
4
+ */
5
+ /**
6
+ * Format a value for display in a menu item.
7
+ * Truncates long values and provides type-appropriate previews.
8
+ *
9
+ * @param value - The value to format
10
+ * @param maxLength - Maximum length before truncation (default 40)
11
+ * @returns Formatted string representation
12
+ */
13
+ export declare function formatValuePreview(value: unknown, maxLength?: number): string;
14
+ /**
15
+ * Format a path array for display, stripping the "root" prefix.
16
+ *
17
+ * @param path - Array of path segments (e.g., ["root", "settings", "name"])
18
+ * @returns Formatted path string (e.g., "settings.name")
19
+ */
20
+ export declare function formatPath(path: string[]): string;
21
+ /**
22
+ * Format a path as a breadcrumb trail for nested navigation.
23
+ * Truncates from the left if too long.
24
+ *
25
+ * @param path - Array of path segments
26
+ * @param maxLength - Maximum total length (default 50)
27
+ * @returns Breadcrumb string (e.g., "settings → permissions → mint")
28
+ */
29
+ export declare function formatBreadcrumb(path: string[], maxLength?: number): string;
30
+ //# sourceMappingURL=formatting.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../../../../src/Sprinkle/utils/formatting.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,SAAK,GAAG,MAAM,CAuDzE;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAOjD;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,SAAS,SAAK,GAAG,MAAM,CAiCvE"}