@silo-code/sdk 0.28.1 → 0.29.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 (183) hide show
  1. package/dist/AddRow.d.ts +21 -0
  2. package/dist/AddRow.d.ts.map +1 -0
  3. package/dist/AddRow.js +24 -0
  4. package/dist/AddRow.js.map +1 -0
  5. package/dist/Badge.d.ts +32 -0
  6. package/dist/Badge.d.ts.map +1 -0
  7. package/dist/Badge.js +32 -0
  8. package/dist/Badge.js.map +1 -0
  9. package/dist/Button.d.ts +29 -0
  10. package/dist/Button.d.ts.map +1 -0
  11. package/dist/Button.js +25 -0
  12. package/dist/Button.js.map +1 -0
  13. package/dist/Callout.d.ts +26 -0
  14. package/dist/Callout.d.ts.map +1 -0
  15. package/dist/Callout.js +26 -0
  16. package/dist/Callout.js.map +1 -0
  17. package/dist/CheckboxRow.d.ts +27 -0
  18. package/dist/CheckboxRow.d.ts.map +1 -0
  19. package/dist/CheckboxRow.js +24 -0
  20. package/dist/CheckboxRow.js.map +1 -0
  21. package/dist/EmptyState.d.ts +40 -0
  22. package/dist/EmptyState.d.ts.map +1 -0
  23. package/dist/EmptyState.js +34 -0
  24. package/dist/EmptyState.js.map +1 -0
  25. package/dist/IconButton.d.ts +35 -0
  26. package/dist/IconButton.d.ts.map +1 -0
  27. package/dist/IconButton.js +31 -0
  28. package/dist/IconButton.js.map +1 -0
  29. package/dist/InlineEdit.d.ts +63 -0
  30. package/dist/InlineEdit.d.ts.map +1 -0
  31. package/dist/InlineEdit.js +121 -0
  32. package/dist/InlineEdit.js.map +1 -0
  33. package/dist/Input.d.ts +26 -0
  34. package/dist/Input.d.ts.map +1 -0
  35. package/dist/Input.js +28 -0
  36. package/dist/Input.js.map +1 -0
  37. package/dist/List.d.ts +74 -0
  38. package/dist/List.d.ts.map +1 -0
  39. package/dist/List.js +104 -0
  40. package/dist/List.js.map +1 -0
  41. package/dist/ModalActions.d.ts +40 -0
  42. package/dist/ModalActions.d.ts.map +1 -0
  43. package/dist/ModalActions.js +36 -0
  44. package/dist/ModalActions.js.map +1 -0
  45. package/dist/RadioGroup.d.ts +55 -0
  46. package/dist/RadioGroup.d.ts.map +1 -0
  47. package/dist/RadioGroup.js +60 -0
  48. package/dist/RadioGroup.js.map +1 -0
  49. package/dist/SearchInput.d.ts +30 -0
  50. package/dist/SearchInput.d.ts.map +1 -0
  51. package/dist/SearchInput.js +36 -0
  52. package/dist/SearchInput.js.map +1 -0
  53. package/dist/Section.d.ts +35 -0
  54. package/dist/Section.d.ts.map +1 -0
  55. package/dist/Section.js +31 -0
  56. package/dist/Section.js.map +1 -0
  57. package/dist/SegmentedTabs.d.ts +41 -0
  58. package/dist/SegmentedTabs.d.ts.map +1 -0
  59. package/dist/SegmentedTabs.js +33 -0
  60. package/dist/SegmentedTabs.js.map +1 -0
  61. package/dist/Select.d.ts +23 -0
  62. package/dist/Select.d.ts.map +1 -0
  63. package/dist/Select.js +23 -0
  64. package/dist/Select.js.map +1 -0
  65. package/dist/SettingRow.d.ts +33 -0
  66. package/dist/SettingRow.d.ts.map +1 -0
  67. package/dist/SettingRow.js +30 -0
  68. package/dist/SettingRow.js.map +1 -0
  69. package/dist/Switch.d.ts +32 -0
  70. package/dist/Switch.d.ts.map +1 -0
  71. package/dist/Switch.js +31 -0
  72. package/dist/Switch.js.map +1 -0
  73. package/dist/Tabs.d.ts +59 -0
  74. package/dist/Tabs.d.ts.map +1 -0
  75. package/dist/Tabs.js +51 -0
  76. package/dist/Tabs.js.map +1 -0
  77. package/dist/Textarea.d.ts +22 -0
  78. package/dist/Textarea.d.ts.map +1 -0
  79. package/dist/Textarea.js +25 -0
  80. package/dist/Textarea.js.map +1 -0
  81. package/dist/badge-classes.d.ts +15 -0
  82. package/dist/badge-classes.d.ts.map +1 -0
  83. package/dist/badge-classes.js +12 -0
  84. package/dist/badge-classes.js.map +1 -0
  85. package/dist/button-classes.d.ts +20 -0
  86. package/dist/button-classes.d.ts.map +1 -0
  87. package/dist/button-classes.js +16 -0
  88. package/dist/button-classes.js.map +1 -0
  89. package/dist/empty-state-classes.d.ts +12 -0
  90. package/dist/empty-state-classes.d.ts.map +1 -0
  91. package/dist/empty-state-classes.js +8 -0
  92. package/dist/empty-state-classes.js.map +1 -0
  93. package/dist/icon-button-classes.d.ts +15 -0
  94. package/dist/icon-button-classes.d.ts.map +1 -0
  95. package/dist/icon-button-classes.js +12 -0
  96. package/dist/icon-button-classes.js.map +1 -0
  97. package/dist/index.d.ts +33 -4
  98. package/dist/index.d.ts.map +1 -1
  99. package/dist/index.js +31 -4
  100. package/dist/index.js.map +1 -1
  101. package/dist/inline-edit-classes.d.ts +12 -0
  102. package/dist/inline-edit-classes.d.ts.map +1 -0
  103. package/dist/inline-edit-classes.js +18 -0
  104. package/dist/inline-edit-classes.js.map +1 -0
  105. package/dist/inline-edit-controller.d.ts +20 -0
  106. package/dist/inline-edit-controller.d.ts.map +1 -0
  107. package/dist/inline-edit-controller.js +52 -0
  108. package/dist/inline-edit-controller.js.map +1 -0
  109. package/dist/input-classes.d.ts +8 -0
  110. package/dist/input-classes.d.ts.map +1 -0
  111. package/dist/input-classes.js +10 -0
  112. package/dist/input-classes.js.map +1 -0
  113. package/dist/list-classes.d.ts +19 -0
  114. package/dist/list-classes.d.ts.map +1 -0
  115. package/dist/list-classes.js +16 -0
  116. package/dist/list-classes.js.map +1 -0
  117. package/dist/radio-card-classes.d.ts +8 -0
  118. package/dist/radio-card-classes.d.ts.map +1 -0
  119. package/dist/radio-card-classes.js +10 -0
  120. package/dist/radio-card-classes.js.map +1 -0
  121. package/dist/search-input-classes.d.ts +8 -0
  122. package/dist/search-input-classes.d.ts.map +1 -0
  123. package/dist/search-input-classes.js +10 -0
  124. package/dist/search-input-classes.js.map +1 -0
  125. package/dist/segmented-tabs-classes.d.ts +8 -0
  126. package/dist/segmented-tabs-classes.d.ts.map +1 -0
  127. package/dist/segmented-tabs-classes.js +10 -0
  128. package/dist/segmented-tabs-classes.js.map +1 -0
  129. package/dist/switch-classes.d.ts +8 -0
  130. package/dist/switch-classes.d.ts.map +1 -0
  131. package/dist/switch-classes.js +10 -0
  132. package/dist/switch-classes.js.map +1 -0
  133. package/dist/tabs-classes.d.ts +8 -0
  134. package/dist/tabs-classes.d.ts.map +1 -0
  135. package/dist/tabs-classes.js +10 -0
  136. package/dist/tabs-classes.js.map +1 -0
  137. package/package.json +1 -1
  138. package/src/AddRow.tsx +56 -0
  139. package/src/Badge.tsx +55 -0
  140. package/src/Button.tsx +52 -0
  141. package/src/Callout.tsx +26 -0
  142. package/src/CheckboxRow.tsx +54 -0
  143. package/src/EmptyState.tsx +69 -0
  144. package/src/IconButton.tsx +55 -0
  145. package/src/InlineEdit.tsx +260 -0
  146. package/src/Input.tsx +39 -0
  147. package/src/List.tsx +240 -0
  148. package/src/ModalActions.tsx +52 -0
  149. package/src/RadioGroup.tsx +101 -0
  150. package/src/SearchInput.tsx +98 -0
  151. package/src/Section.tsx +49 -0
  152. package/src/SegmentedTabs.tsx +70 -0
  153. package/src/Select.tsx +36 -0
  154. package/src/SettingRow.tsx +47 -0
  155. package/src/Switch.tsx +63 -0
  156. package/src/Tabs.tsx +89 -0
  157. package/src/Textarea.tsx +33 -0
  158. package/src/badge-classes.test.ts +20 -0
  159. package/src/badge-classes.ts +27 -0
  160. package/src/button-classes.test.ts +24 -0
  161. package/src/button-classes.ts +32 -0
  162. package/src/empty-state-classes.test.ts +13 -0
  163. package/src/empty-state-classes.ts +17 -0
  164. package/src/icon-button-classes.test.ts +13 -0
  165. package/src/icon-button-classes.ts +19 -0
  166. package/src/index.ts +45 -4
  167. package/src/inline-edit-classes.test.ts +27 -0
  168. package/src/inline-edit-classes.ts +18 -0
  169. package/src/inline-edit-controller.ts +53 -0
  170. package/src/input-classes.test.ts +13 -0
  171. package/src/input-classes.ts +9 -0
  172. package/src/list-classes.test.ts +23 -0
  173. package/src/list-classes.ts +26 -0
  174. package/src/radio-card-classes.test.ts +12 -0
  175. package/src/radio-card-classes.ts +9 -0
  176. package/src/search-input-classes.test.ts +12 -0
  177. package/src/search-input-classes.ts +9 -0
  178. package/src/segmented-tabs-classes.test.ts +12 -0
  179. package/src/segmented-tabs-classes.ts +9 -0
  180. package/src/switch-classes.test.ts +9 -0
  181. package/src/switch-classes.ts +9 -0
  182. package/src/tabs-classes.test.ts +12 -0
  183. package/src/tabs-classes.ts +9 -0
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Resolve the host `.silo-button*` class string for a Button's `variant` +
3
+ * `size`. Primary/danger are standalone class names (not modifiers on
4
+ * `.silo-button`); `sm` composes with any variant.
5
+ *
6
+ * @internal
7
+ */
8
+ export function buttonClass(variant = "normal", size = "normal") {
9
+ const base = variant === "primary"
10
+ ? "silo-button-primary"
11
+ : variant === "danger"
12
+ ? "silo-button-danger"
13
+ : "silo-button";
14
+ return size === "sm" ? `${base} silo-button-sm` : base;
15
+ }
16
+ //# sourceMappingURL=button-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-classes.js","sourceRoot":"","sources":["../src/button-classes.ts"],"names":[],"mappings":"AAaA;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,UAAyB,QAAQ,EACjC,OAAmB,QAAQ;IAE3B,MAAM,IAAI,GACR,OAAO,KAAK,SAAS;QACnB,CAAC,CAAC,qBAAqB;QACvB,CAAC,CAAC,OAAO,KAAK,QAAQ;YACpB,CAAC,CAAC,oBAAoB;YACtB,CAAC,CAAC,aAAa,CAAC;IACtB,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;AACzD,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Class-string / data-attribute mapping for {@link EmptyState} — pinned by
3
+ * unit tests so a rename of the host contract fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export type EmptyStateTone = "ok" | "neutral";
8
+ /**
9
+ * @internal
10
+ */
11
+ export declare function emptyStateIconDataTone(tone?: EmptyStateTone): "ok" | undefined;
12
+ //# sourceMappingURL=empty-state-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"empty-state-classes.d.ts","sourceRoot":"","sources":["../src/empty-state-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,SAAS,CAAC;AAE9C;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,GAAE,cAA0B,GAC/B,IAAI,GAAG,SAAS,CAGlB"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @internal
3
+ */
4
+ export function emptyStateIconDataTone(tone = "neutral") {
5
+ // CSS keys the ok tone on data-tone="ok"; neutral is the default (no attr).
6
+ return tone === "ok" ? "ok" : undefined;
7
+ }
8
+ //# sourceMappingURL=empty-state-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"empty-state-classes.js","sourceRoot":"","sources":["../src/empty-state-classes.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAuB,SAAS;IAEhC,4EAA4E;IAC5E,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1C,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Class-string mapping for {@link IconButton} — pinned by unit tests so a
3
+ * rename of the host contract classes fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export type IconButtonSize = "normal" | "sm";
8
+ /**
9
+ * Resolve the host `.silo-icon-button*` class string for an IconButton's
10
+ * `size`. Default is the 32px standalone size; `sm` adds the 26px modifier.
11
+ *
12
+ * @internal
13
+ */
14
+ export declare function iconButtonClass(size?: IconButtonSize): string;
15
+ //# sourceMappingURL=icon-button-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-button-classes.d.ts","sourceRoot":"","sources":["../src/icon-button-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,IAAI,CAAC;AAE7C;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,GAAE,cAAyB,GAAG,MAAM,CAIvE"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Resolve the host `.silo-icon-button*` class string for an IconButton's
3
+ * `size`. Default is the 32px standalone size; `sm` adds the 26px modifier.
4
+ *
5
+ * @internal
6
+ */
7
+ export function iconButtonClass(size = "normal") {
8
+ return size === "sm"
9
+ ? "silo-icon-button silo-icon-button-sm"
10
+ : "silo-icon-button";
11
+ }
12
+ //# sourceMappingURL=icon-button-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-button-classes.js","sourceRoot":"","sources":["../src/icon-button-classes.ts"],"names":[],"mappings":"AAQA;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,OAAuB,QAAQ;IAC7D,OAAO,IAAI,KAAK,IAAI;QAClB,CAAC,CAAC,sCAAsC;QACxC,CAAC,CAAC,kBAAkB,CAAC;AACzB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -5,10 +5,10 @@
5
5
  * host-internal and may change without notice.
6
6
  *
7
7
  * **What's here:** the types-first extension contract (see `types.ts`) plus a
8
- * small set of blessed runtime helpers (`Tooltip`, `useFocusGroup`,
9
- * `useServiceState`, `DND_MIME`, `PathDeniedError`, `NetworkError`). The SDK
10
- * peer-depends on React 19; changes to the runtime helpers can be breaking
11
- * even when the types are unchanged.
8
+ * small set of blessed runtime helpers (`Tooltip`, the modal design-system
9
+ * kit, `useFocusGroup`, `useServiceState`, `DND_MIME`, `PathDeniedError`,
10
+ * `NetworkError`). The SDK peer-depends on React 19; changes to the runtime
11
+ * helpers can be breaking even when the types are unchanged.
12
12
  *
13
13
  * This is also the entry point the API-reference generator (TypeDoc) reads, so
14
14
  * the published reference is exactly this surface — no more, no less.
@@ -41,8 +41,37 @@ export type { ContextKeys } from "./context-keys.js";
41
41
  export type { Event } from "./event.js";
42
42
  export { path } from "./path.js";
43
43
  export { Tooltip } from "./Tooltip.js";
44
+ export { Button } from "./Button.js";
45
+ export type { ButtonVariant, ButtonSize } from "./Button.js";
46
+ export { IconButton } from "./IconButton.js";
47
+ export type { IconButtonSize } from "./IconButton.js";
48
+ export { Input } from "./Input.js";
49
+ export { Textarea } from "./Textarea.js";
50
+ export { SearchInput } from "./SearchInput.js";
51
+ export { InlineEdit } from "./InlineEdit.js";
52
+ export type { InlineEditValidation } from "./InlineEdit.js";
53
+ export { Select } from "./Select.js";
54
+ export { Switch } from "./Switch.js";
55
+ export { CheckboxRow } from "./CheckboxRow.js";
56
+ export { RadioGroup, RadioCard } from "./RadioGroup.js";
57
+ export { ModalActions } from "./ModalActions.js";
58
+ export { SegmentedTabs } from "./SegmentedTabs.js";
59
+ export type { SegmentedTabItem } from "./SegmentedTabs.js";
60
+ export { Tabs, TabPanel } from "./Tabs.js";
61
+ export type { TabItem } from "./Tabs.js";
62
+ export { List, ListRow } from "./List.js";
63
+ export type { ListRowProps, ListRowTruncate } from "./List.js";
64
+ export { AddRow } from "./AddRow.js";
65
+ export { Badge } from "./Badge.js";
66
+ export type { BadgeTone } from "./Badge.js";
67
+ export { EmptyState } from "./EmptyState.js";
68
+ export type { EmptyStateTone } from "./EmptyState.js";
69
+ export { Callout } from "./Callout.js";
70
+ export { Section } from "./Section.js";
71
+ export { SettingRow } from "./SettingRow.js";
44
72
  export { useServiceState } from "./use-service-state.js";
45
73
  export type { ReactiveService } from "./use-service-state.js";
46
74
  export { useFocusGroup, focusGroupNextIndex } from "./use-focus-group.js";
47
75
  export type { FocusGroup, FocusGroupOptions, FocusGroupContainerProps, FocusGroupItemProps, FocusGroupOrientation, FocusGroupNavQuery, } from "./use-focus-group.js";
76
+ export { setActiveInlineEditCancel, yieldEscapeToInlineEdit, } from "./inline-edit-controller.js";
48
77
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -5,10 +5,10 @@
5
5
  * host-internal and may change without notice.
6
6
  *
7
7
  * **What's here:** the types-first extension contract (see `types.ts`) plus a
8
- * small set of blessed runtime helpers (`Tooltip`, `useFocusGroup`,
9
- * `useServiceState`, `DND_MIME`, `PathDeniedError`, `NetworkError`). The SDK
10
- * peer-depends on React 19; changes to the runtime helpers can be breaking
11
- * even when the types are unchanged.
8
+ * small set of blessed runtime helpers (`Tooltip`, the modal design-system
9
+ * kit, `useFocusGroup`, `useServiceState`, `DND_MIME`, `PathDeniedError`,
10
+ * `NetworkError`). The SDK peer-depends on React 19; changes to the runtime
11
+ * helpers can be breaking even when the types are unchanged.
12
12
  *
13
13
  * This is also the entry point the API-reference generator (TypeDoc) reads, so
14
14
  * the published reference is exactly this surface — no more, no less.
@@ -26,6 +26,29 @@ export { path } from "./path.js";
26
26
  // Tooltip — the same styled hover popup the host uses in the status bar.
27
27
  // Extensions use this instead of native `title` attributes to match host chrome.
28
28
  export { Tooltip } from "./Tooltip.js";
29
+ // Modal design-system kit (RFC 0016 / ADR 0026) — presentational components
30
+ // styled purely via host-provided `.silo-*` classes.
31
+ export { Button } from "./Button.js";
32
+ export { IconButton } from "./IconButton.js";
33
+ export { Input } from "./Input.js";
34
+ export { Textarea } from "./Textarea.js";
35
+ export { SearchInput } from "./SearchInput.js";
36
+ export { InlineEdit } from "./InlineEdit.js";
37
+ export { Select } from "./Select.js";
38
+ export { Switch } from "./Switch.js";
39
+ export { CheckboxRow } from "./CheckboxRow.js";
40
+ export { RadioGroup, RadioCard } from "./RadioGroup.js";
41
+ export { ModalActions } from "./ModalActions.js";
42
+ // Structure half of the modal design-system kit (RFC 0016).
43
+ export { SegmentedTabs } from "./SegmentedTabs.js";
44
+ export { Tabs, TabPanel } from "./Tabs.js";
45
+ export { List, ListRow } from "./List.js";
46
+ export { AddRow } from "./AddRow.js";
47
+ export { Badge } from "./Badge.js";
48
+ export { EmptyState } from "./EmptyState.js";
49
+ export { Callout } from "./Callout.js";
50
+ export { Section } from "./Section.js";
51
+ export { SettingRow } from "./SettingRow.js";
29
52
  // Runtime helpers. The one blessed way for an extension to read a `ctx`
30
53
  // service's reactive state in React — replaces hand-rolled useSyncExternalStore.
31
54
  export { useServiceState } from "./use-service-state.js";
@@ -34,4 +57,8 @@ export { useServiceState } from "./use-service-state.js";
34
57
  // `focusGroupNextIndex` helper is the pure roving-index core for widgets that
35
58
  // can't use the focus-driven hook (e.g. menus driven by a document listener).
36
59
  export { useFocusGroup, focusGroupNextIndex } from "./use-focus-group.js";
60
+ // Host/InlineEdit coordination for InlineEdit's two-stage Escape (RFC 0016).
61
+ // @internal — host-only plumbing, not part of the documented reference;
62
+ // extension authors never call these directly.
63
+ export { setActiveInlineEditCancel, yieldEscapeToInlineEdit, } from "./inline-edit-controller.js";
37
64
  //# 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;;;;;;;;;;;;;;;;GAgBG;AAiHH,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AA6BhD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAoBzC,sEAAsE;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAkCjD,8EAA8E;AAC9E,8EAA8E;AAC9E,6DAA6D;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,yEAAyE;AACzE,iFAAiF;AACjF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,wEAAwE;AACxE,iFAAiF;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,8EAA8E;AAC9E,4EAA4E;AAC5E,8EAA8E;AAC9E,8EAA8E;AAC9E,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAiHH,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AA6BhD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAoBzC,sEAAsE;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAkCjD,8EAA8E;AAC9E,8EAA8E;AAC9E,6DAA6D;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,yEAAyE;AACzE,iFAAiF;AACjF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,4EAA4E;AAC5E,qDAAqD;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,4DAA4D;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEvC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,wEAAwE;AACxE,iFAAiF;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,8EAA8E;AAC9E,4EAA4E;AAC5E,8EAA8E;AAC9E,8EAA8E;AAC9E,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAUvE,6EAA6E;AAC7E,wEAAwE;AACxE,+CAA+C;AAC/C,OAAO,EACL,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Class-string mapping for {@link InlineEdit} — pinned by unit tests so a
3
+ * rename of the host contract classes fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export declare function inlineEditDisplayClass(multiline: boolean): string;
8
+ /**
9
+ * @internal
10
+ */
11
+ export declare function inlineEditRowClass(multiline: boolean): string;
12
+ //# sourceMappingURL=inline-edit-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline-edit-classes.d.ts","sourceRoot":"","sources":["../src/inline-edit-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,CAIjE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,CAE7D"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Class-string mapping for {@link InlineEdit} — pinned by unit tests so a
3
+ * rename of the host contract classes fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export function inlineEditDisplayClass(multiline) {
8
+ return multiline
9
+ ? "silo-inline-edit-display multiline"
10
+ : "silo-inline-edit-display";
11
+ }
12
+ /**
13
+ * @internal
14
+ */
15
+ export function inlineEditRowClass(multiline) {
16
+ return multiline ? "silo-inline-edit-row multiline" : "silo-inline-edit-row";
17
+ }
18
+ //# sourceMappingURL=inline-edit-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline-edit-classes.js","sourceRoot":"","sources":["../src/inline-edit-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAkB;IACvD,OAAO,SAAS;QACd,CAAC,CAAC,oCAAoC;QACtC,CAAC,CAAC,0BAA0B,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,SAAkB;IACnD,OAAO,SAAS,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,sBAAsB,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Registers the currently-editing `InlineEdit`'s cancel callback so the
3
+ * enclosing modal's Escape handler can yield to it. Call with `null` when
4
+ * editing stops for any reason (save, the ✗ button, unmount) so a stale
5
+ * callback never lingers.
6
+ *
7
+ * @category Consumer Services
8
+ * @internal
9
+ */
10
+ export declare function setActiveInlineEditCancel(cancel: (() => void) | null): void;
11
+ /**
12
+ * If an `InlineEdit` is mid-edit, cancels it and returns `true` (the
13
+ * caller's Escape handler should stop there, not close the modal). Returns
14
+ * `false` when nothing is being edited.
15
+ *
16
+ * @category Consumer Services
17
+ * @internal
18
+ */
19
+ export declare function yieldEscapeToInlineEdit(): boolean;
20
+ //# sourceMappingURL=inline-edit-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline-edit-controller.d.ts","sourceRoot":"","sources":["../src/inline-edit-controller.ts"],"names":[],"mappings":"AAyBA;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAE3E;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAMjD"}
@@ -0,0 +1,52 @@
1
+ // Coordination for `InlineEdit`'s two-stage Escape (RFC 0016): the first
2
+ // Escape cancels an in-progress edit, the next Escape closes the enclosing
3
+ // modal. Mirrors the host's `menu-controller.ts` `getMenu()` pattern — a
4
+ // single piece of module state the modal's own Escape handler checks before
5
+ // acting on the key itself — because `InlineEdit` doesn't have (and doesn't
6
+ // need) a document-level keydown listener of its own; the host's `Modal.tsx`
7
+ // already owns one.
8
+ //
9
+ // Lives in the SDK, not the host, even though only host code (`Modal.tsx`)
10
+ // calls `yieldEscapeToInlineEdit`: the dependency only runs one direction
11
+ // (extension-host depends on @silo-code/sdk, never the reverse), and
12
+ // `InlineEdit` — a public SDK component — is the thing calling
13
+ // `setActiveInlineEditCancel`. Exported from the barrel so the host can
14
+ // import it like anything else in `@silo-code/sdk`, tagged `@internal` to
15
+ // keep it out of the public docs reference — extension authors never call
16
+ // these directly.
17
+ //
18
+ // This intentionally works regardless of the modal's `dismissible` option:
19
+ // InlineEdit ships on `Workspace Properties`-style non-dismissible modals
20
+ // (protecting other staged input) as often as dismissible ones, and
21
+ // cancelling an edit-in-place is a narrower, always-safe action than closing
22
+ // the whole modal.
23
+ let activeCancel = null;
24
+ /**
25
+ * Registers the currently-editing `InlineEdit`'s cancel callback so the
26
+ * enclosing modal's Escape handler can yield to it. Call with `null` when
27
+ * editing stops for any reason (save, the ✗ button, unmount) so a stale
28
+ * callback never lingers.
29
+ *
30
+ * @category Consumer Services
31
+ * @internal
32
+ */
33
+ export function setActiveInlineEditCancel(cancel) {
34
+ activeCancel = cancel;
35
+ }
36
+ /**
37
+ * If an `InlineEdit` is mid-edit, cancels it and returns `true` (the
38
+ * caller's Escape handler should stop there, not close the modal). Returns
39
+ * `false` when nothing is being edited.
40
+ *
41
+ * @category Consumer Services
42
+ * @internal
43
+ */
44
+ export function yieldEscapeToInlineEdit() {
45
+ if (!activeCancel)
46
+ return false;
47
+ const cancel = activeCancel;
48
+ activeCancel = null;
49
+ cancel();
50
+ return true;
51
+ }
52
+ //# sourceMappingURL=inline-edit-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inline-edit-controller.js","sourceRoot":"","sources":["../src/inline-edit-controller.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,2EAA2E;AAC3E,yEAAyE;AACzE,4EAA4E;AAC5E,4EAA4E;AAC5E,6EAA6E;AAC7E,oBAAoB;AACpB,EAAE;AACF,2EAA2E;AAC3E,0EAA0E;AAC1E,qEAAqE;AACrE,+DAA+D;AAC/D,wEAAwE;AACxE,0EAA0E;AAC1E,0EAA0E;AAC1E,kBAAkB;AAClB,EAAE;AACF,2EAA2E;AAC3E,0EAA0E;AAC1E,oEAAoE;AACpE,6EAA6E;AAC7E,mBAAmB;AAEnB,IAAI,YAAY,GAAwB,IAAI,CAAC;AAE7C;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB,CAAC,MAA2B;IACnE,YAAY,GAAG,MAAM,CAAC;AACxB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB;IACrC,IAAI,CAAC,YAAY;QAAE,OAAO,KAAK,CAAC;IAChC,MAAM,MAAM,GAAG,YAAY,CAAC;IAC5B,YAAY,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,CAAC;IACT,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Class-string mapping for {@link Input} — pinned by unit tests so a rename
3
+ * of the host contract classes fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export declare function inputClass(block?: boolean): string;
8
+ //# sourceMappingURL=input-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-classes.d.ts","sourceRoot":"","sources":["../src/input-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,UAAQ,GAAG,MAAM,CAEhD"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Class-string mapping for {@link Input} — pinned by unit tests so a rename
3
+ * of the host contract classes fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export function inputClass(block = false) {
8
+ return block ? "silo-input silo-input-block" : "silo-input";
9
+ }
10
+ //# sourceMappingURL=input-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-classes.js","sourceRoot":"","sources":["../src/input-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,KAAK,GAAG,KAAK;IACtC,OAAO,KAAK,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,YAAY,CAAC;AAC9D,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Class-string / data-attribute mapping for {@link ListRow} — pinned by unit
3
+ * tests so a rename of the host contract fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export type ListRowTruncate = "end" | "start";
8
+ /**
9
+ * @internal
10
+ */
11
+ export declare function listRowDataSelected(selected: boolean): "true" | undefined;
12
+ /**
13
+ * Front-truncation is expressed as `data-truncate="start"` on
14
+ * `.silo-list-row-name`; end-truncation is the CSS default (no attribute).
15
+ *
16
+ * @internal
17
+ */
18
+ export declare function listRowNameTruncate(truncate?: ListRowTruncate): "start" | undefined;
19
+ //# sourceMappingURL=list-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-classes.d.ts","sourceRoot":"","sources":["../src/list-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,OAAO,CAAC;AAE9C;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAEzE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,GAAE,eAAuB,GAChC,OAAO,GAAG,SAAS,CAErB"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @internal
3
+ */
4
+ export function listRowDataSelected(selected) {
5
+ return selected ? "true" : undefined;
6
+ }
7
+ /**
8
+ * Front-truncation is expressed as `data-truncate="start"` on
9
+ * `.silo-list-row-name`; end-truncation is the CSS default (no attribute).
10
+ *
11
+ * @internal
12
+ */
13
+ export function listRowNameTruncate(truncate = "end") {
14
+ return truncate === "start" ? "start" : undefined;
15
+ }
16
+ //# sourceMappingURL=list-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-classes.js","sourceRoot":"","sources":["../src/list-classes.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAiB;IACnD,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACvC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,WAA4B,KAAK;IAEjC,OAAO,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AACpD,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * `data-selected` value for {@link RadioCard} — pinned by unit tests so a
3
+ * rename of the host contract attribute fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export declare function radioCardDataSelected(selected: boolean): "true" | undefined;
8
+ //# sourceMappingURL=radio-card-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-card-classes.d.ts","sourceRoot":"","sources":["../src/radio-card-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE3E"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * `data-selected` value for {@link RadioCard} — pinned by unit tests so a
3
+ * rename of the host contract attribute fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export function radioCardDataSelected(selected) {
8
+ return selected ? "true" : undefined;
9
+ }
10
+ //# sourceMappingURL=radio-card-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radio-card-classes.js","sourceRoot":"","sources":["../src/radio-card-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAiB;IACrD,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACvC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Class-string mapping for {@link SearchInput} — pinned by unit tests so a
3
+ * rename of the host contract classes fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export declare function searchInputClass(hasValue: boolean): string;
8
+ //# sourceMappingURL=search-input-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-input-classes.d.ts","sourceRoot":"","sources":["../src/search-input-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAE1D"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Class-string mapping for {@link SearchInput} — pinned by unit tests so a
3
+ * rename of the host contract classes fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export function searchInputClass(hasValue) {
8
+ return hasValue ? "silo-search-input has-value" : "silo-search-input";
9
+ }
10
+ //# sourceMappingURL=search-input-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-input-classes.js","sourceRoot":"","sources":["../src/search-input-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAiB;IAChD,OAAO,QAAQ,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,mBAAmB,CAAC;AACxE,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Class-string / data-attribute mapping for {@link SegmentedTabs} — pinned
3
+ * by unit tests so a rename of the host contract fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export declare function segmentedTabDataActive(active: boolean): "true" | undefined;
8
+ //# sourceMappingURL=segmented-tabs-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"segmented-tabs-classes.d.ts","sourceRoot":"","sources":["../src/segmented-tabs-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAE1E"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Class-string / data-attribute mapping for {@link SegmentedTabs} — pinned
3
+ * by unit tests so a rename of the host contract fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export function segmentedTabDataActive(active) {
8
+ return active ? "true" : undefined;
9
+ }
10
+ //# sourceMappingURL=segmented-tabs-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"segmented-tabs-classes.js","sourceRoot":"","sources":["../src/segmented-tabs-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAe;IACpD,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACrC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * `data-checked` value for {@link Switch}'s track — pinned by unit tests so
3
+ * a rename of the host contract attribute fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export declare function switchDataChecked(checked: boolean): "true" | "false";
8
+ //# sourceMappingURL=switch-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch-classes.d.ts","sourceRoot":"","sources":["../src/switch-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAEpE"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * `data-checked` value for {@link Switch}'s track — pinned by unit tests so
3
+ * a rename of the host contract attribute fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export function switchDataChecked(checked) {
8
+ return checked ? "true" : "false";
9
+ }
10
+ //# sourceMappingURL=switch-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch-classes.js","sourceRoot":"","sources":["../src/switch-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAgB;IAChD,OAAO,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;AACpC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Class-string / data-attribute mapping for {@link Tabs} — pinned by unit
3
+ * tests so a rename of the host contract fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export declare function tabDataActive(active: boolean): "true" | undefined;
8
+ //# sourceMappingURL=tabs-classes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs-classes.d.ts","sourceRoot":"","sources":["../src/tabs-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAEjE"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Class-string / data-attribute mapping for {@link Tabs} — pinned by unit
3
+ * tests so a rename of the host contract fails CI (RFC 0016).
4
+ *
5
+ * @internal
6
+ */
7
+ export function tabDataActive(active) {
8
+ return active ? "true" : undefined;
9
+ }
10
+ //# sourceMappingURL=tabs-classes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs-classes.js","sourceRoot":"","sources":["../src/tabs-classes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAAe;IAC3C,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACrC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@silo-code/sdk",
3
- "version": "0.28.1",
3
+ "version": "0.29.0",
4
4
  "description": "The public, types-first SDK for building Silo extensions — the only surface third-party extensions import.",
5
5
  "license": "MIT",
6
6
  "author": "Dave Weaver",