@colixsystems/widget-sdk 0.29.0 → 0.30.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/README.md CHANGED
@@ -46,7 +46,11 @@ See the design reference for the full architecture: [`docs/architecture/widget-m
46
46
 
47
47
  ## Status
48
48
 
49
- `v0.29.0` — pre-publish. The package surface (types, function names, export paths) is the v1 contract; runtime behaviour for some hooks is stubbed (each hook documents what's wired and what isn't). It is **not yet published to npm**.
49
+ `v0.30.0` — pre-publish. The package surface (types, function names, export paths) is the v1 contract; runtime behaviour for some hooks is stubbed (each hook documents what's wired and what isn't). It is **not yet published to npm**.
50
+
51
+ ### What's new in 0.30.0
52
+
53
+ **New `folderRef` propertySchema type (REQ-WDG-FOLDERREF).** A Filestore folder picker that stores a bare folder UUID (or `null` = space root) and renders the Asset/Filestore `FolderSelector` in the Studio Properties Panel, scoped by a sibling space field named via `ui.spaceTypeField` (its value `"project"` / `"personal"` selects the PROJECT / PERSONAL space). Changing the space drops a now-out-of-scope selection. Filestore spaces are per-tenant end-user data and are not copied, so tenant-copy leaves the id as-is. Additive — no existing export or type changed.
50
54
 
51
55
  ### What's new in 0.29.0
52
56
 
package/dist/index.d.ts CHANGED
@@ -45,6 +45,8 @@ export type WidgetPropertyType =
45
45
  | "asset"
46
46
  // REQ-WDG-ASSET: ordered multi-file picker → Array<File UUID>.
47
47
  | "assetList"
48
+ // REQ-WDG-FOLDERREF: Filestore folder picker → folder UUID (or null = root).
49
+ | "folderRef"
48
50
  | "expression"
49
51
  | "eventBinding"
50
52
  | "object"
@@ -40,6 +40,13 @@ const VALID_TYPES = new Set([
40
40
  // selection order). Renders `MultiFileSelector` in the Studio Properties
41
41
  // Panel; tenant-copy remaps each id through the layout walk's fileId map.
42
42
  "assetList",
43
+ // REQ-WDG-FOLDERREF: `folderRef` is a Filestore folder picker. Stores a bare
44
+ // folder UUID (or null = space root); renders `FolderSelector` in the Studio
45
+ // Properties Panel, scoped by a sibling space field named via
46
+ // `ui.spaceTypeField`. Filestore spaces are per-tenant end-user data and are
47
+ // NOT copied, so tenant-copy leaves the id as-is (it resolves to the space
48
+ // root if absent in the target).
49
+ "folderRef",
43
50
  "expression", "eventBinding",
44
51
  "object", "array",
45
52
  ]);
@@ -125,6 +132,7 @@ function coerceLeaf(def, value, path, errors) {
125
132
  case "pageRef":
126
133
  case "richText":
127
134
  case "asset":
135
+ case "folderRef":
128
136
  case "expression":
129
137
  case "eventBinding":
130
138
  if (typeof value !== "string") errors.push(`${path}: expected string`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@colixsystems/widget-sdk",
3
- "version": "0.29.0",
3
+ "version": "0.30.0",
4
4
  "description": "Common widget interface for AppStudio. Implements WidgetManifest, WidgetContext, property schema, and helper hooks.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",