@kustomizer/visual-editor 0.2.0 → 0.2.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kustomizer/visual-editor",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Angular visual page builder for Shopify storefronts — drag & drop editor with component registry, NgRx state, SSR support, and iframe preview",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "keywords": [
@@ -894,8 +894,17 @@ interface ResolvedPreset {
894
894
  */
895
895
  declare class ComponentRegistryService {
896
896
  private readonly definitions;
897
+ private readonly _version;
897
898
  private readonly injectedDefinitions;
898
899
  constructor();
900
+ /**
901
+ * Clear all registered definitions
902
+ */
903
+ clear(): void;
904
+ /**
905
+ * Unregister a single component definition by type
906
+ */
907
+ unregister(type: string): boolean;
899
908
  /**
900
909
  * Register a component definition
901
910
  */
@@ -1027,8 +1036,7 @@ declare class DynamicRendererComponent {
1027
1036
  /** Additional context (sectionId, index, etc.) */
1028
1037
  readonly context: _angular_core.InputSignal<Record<string, unknown>>;
1029
1038
  /** Error state signal */
1030
- private _error;
1031
- error: () => boolean;
1039
+ readonly error: _angular_core.WritableSignal<boolean>;
1032
1040
  private componentRef;
1033
1041
  private currentType;
1034
1042
  private currentAvailableInputs;
@@ -1926,18 +1934,28 @@ interface ComponentManifestEntry {
1926
1934
  * the entries in the ComponentRegistryService as "virtual" definitions
1927
1935
  * (no Angular component class — only metadata for palette and property panel).
1928
1936
  */
1929
- declare class ManifestLoaderService {
1937
+ declare class ManifestLoaderService implements OnDestroy {
1930
1938
  private readonly http;
1931
1939
  private readonly registry;
1940
+ private watchInterval;
1941
+ private lastManifestHash;
1942
+ private manifestTypes;
1932
1943
  /**
1933
1944
  * Fetch the manifest from the given URL and register all components.
1934
1945
  */
1935
1946
  loadManifest(url: string): Observable<ComponentManifest>;
1947
+ /**
1948
+ * Poll the manifest URL for changes and re-register components when the
1949
+ * content hash differs. Only active in dev mode. No-op in production.
1950
+ */
1951
+ startWatching(manifestUrl: string, intervalMs?: number): void;
1952
+ ngOnDestroy(): void;
1936
1953
  /**
1937
1954
  * Register manifest entries in the ComponentRegistryService.
1938
1955
  * Each entry becomes a ComponentDefinition without a `component` field.
1939
1956
  */
1940
1957
  registerManifestComponents(manifest: ComponentManifest): void;
1958
+ private hashManifest;
1941
1959
  private manifestEntryToDefinition;
1942
1960
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ManifestLoaderService, never>;
1943
1961
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<ManifestLoaderService>;