@project-sunbird/collection-editor-react 1.0.5 → 1.0.7

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.
@@ -64,14 +64,15 @@ export interface IConfig {
64
64
  size?: number;
65
65
  accepted?: string;
66
66
  };
67
+ /** When set, replaces every API call's leading /action|/api|/portal
68
+ * segment (see src/api/client.ts's resolveApiUrl) with this host-specific
69
+ * prefix, e.g. if the portal's own gateway proxies every backend service
70
+ * under one path of its own instead. */
71
+ apiSlug?: string;
67
72
  }
68
73
  export interface IEditorConfig {
69
74
  context: IContext;
70
75
  config: IConfig;
71
- /** metadata.apiSlug — when set, replaces every API call's leading
72
- * /action|/api|/portal segment (see src/api/client.ts's resolveApiUrl)
73
- * with this host-specific prefix, e.g. if the portal's own gateway
74
- * proxies every backend service under one path of its own. */
75
76
  metadata?: Record<string, unknown>;
76
77
  data?: unknown;
77
78
  enableSplitBuilder?: boolean;
@@ -125,6 +125,20 @@ export declare function computePathShape(root: INode | undefined): {
125
125
  courseCount: number;
126
126
  };
127
127
  export declare function computeSkillsCovered(root: INode | undefined, skillCategoryCode: string | undefined): string[];
128
+ /**
129
+ * The skills-covered union that should be persisted onto the LP root's OWN
130
+ * skill-category metadata field, or null if it already matches what's
131
+ * currently stored there (treeCache first, same precedence as every other
132
+ * field read this way — e.g. getExplicitCurriculum). Per
133
+ * learning_path_ocd.md's recommendation: writing the derived union onto the
134
+ * root makes a saved Learning Path searchable/discoverable by skill without
135
+ * a separately-editable root field that could drift from what the path
136
+ * actually covers — a Level's own selection (or the Prior/Outcome
137
+ * Assessment's course tags) stays the single source of truth; this is a
138
+ * read-through mirror onto root, never the other way around. Compares
139
+ * order-insensitively so re-syncing an unchanged set doesn't loop.
140
+ */
141
+ export declare function resolveSkillsCoveredForSync(root: INode | undefined, skillCategoryCode: string | undefined, treeCache: Record<string, Record<string, unknown>>): string[] | null;
128
142
  /**
129
143
  * Content Levels whose selected skills include at least one outside the
130
144
  * given scope — same rule as validateLearningPathStructure's
@@ -152,8 +166,8 @@ export interface LpValidationIssue {
152
166
  export declare const REQUIRES_PRIOR_POLICIES: Set<string>;
153
167
  /**
154
168
  * Every synchronous (no network) LP publish rule: consumption policy set;
155
- * prior assessment required only for the Diagnostic ("Adaptive") policy
156
- * (not Fixed, not PriorLearning — see REQUIRES_PRIOR_POLICIES); pre/post
169
+ * prior assessment required only for the adaptive ("Adaptive") policy
170
+ * (not strict, not priorLearning — see REQUIRES_PRIOR_POLICIES); pre/post
157
171
  * slot purity when a slot IS filled (Outcome Assessment itself is optional
158
172
  * — an empty post slot no longer blocks publish/send-for-review); every
159
173
  * content Level has ≥1 course and ≥1 in-scope skill; no empty Levels; every
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@project-sunbird/collection-editor-react",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",