@ultrst-armada/floks 1.1.0 → 1.1.2
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 +9 -10
- package/packages/contracts/dist/index.d.ts +114 -1
- package/packages/contracts/dist/index.js +164 -0
- package/packages/contracts/floks.manifest.json +14 -0
- package/packages/ui/dist/hierarchy/index.d.ts +3 -3
- package/packages/ui/dist/index.d.ts +2 -2
- package/packages/ui/dist/index.js +7 -7
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ultrst-armada/floks",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public",
|
|
@@ -44,13 +44,6 @@
|
|
|
44
44
|
"default": "./packages/contracts/dist/index.js"
|
|
45
45
|
}
|
|
46
46
|
},
|
|
47
|
-
"scripts": {
|
|
48
|
-
"build": "pnpm -r run build",
|
|
49
|
-
"postbuild": "node -e \"import('fs').then(fs => { for (const pkg of fs.readdirSync('packages')) { const d = 'packages/' + pkg + '/dist'; if (!fs.existsSync(d)) continue; for (const f of fs.readdirSync(d, { recursive: true })) { const p = d + '/' + f; if (fs.statSync(p).isFile() && (p.endsWith('.js') || p.endsWith('.d.ts'))) { const c = fs.readFileSync(p, 'utf8'); const n = c.replaceAll('@kloks/', '@ultrst-armada/kloks/').replaceAll('@floks/', '@ultrst-armada/floks/').replaceAll('@ultrst/kloks/', '@ultrst-armada/kloks/').replaceAll('@ultrst/floks/', '@ultrst-armada/floks/').replaceAll('\\\"kloks/', '\\\"@ultrst-armada/kloks/').replaceAll('\\'kloks/', '\\'@ultrst-armada/kloks/').replaceAll('\\\"floks/', '\\\"@ultrst-armada/floks/').replaceAll('\\'floks/', '\\'@ultrst-armada/floks/'); if (c !== n) fs.writeFileSync(p, n); } } } })\"",
|
|
50
|
-
"test": "vitest run",
|
|
51
|
-
"typecheck": "pnpm -r run typecheck",
|
|
52
|
-
"clean": "pnpm -r run clean"
|
|
53
|
-
},
|
|
54
47
|
"dependencies": {
|
|
55
48
|
"zod": "^3.24.1"
|
|
56
49
|
},
|
|
@@ -72,5 +65,11 @@
|
|
|
72
65
|
"typescript": "^5.7.3",
|
|
73
66
|
"vitest": "^3.1.0"
|
|
74
67
|
},
|
|
75
|
-
"
|
|
76
|
-
|
|
68
|
+
"scripts": {
|
|
69
|
+
"build": "pnpm -r run build",
|
|
70
|
+
"postbuild": "node -e \"import('fs').then(fs => { for (const pkg of fs.readdirSync('packages')) { const d = 'packages/' + pkg + '/dist'; if (!fs.existsSync(d)) continue; for (const f of fs.readdirSync(d, { recursive: true })) { const p = d + '/' + f; if (fs.statSync(p).isFile() && (p.endsWith('.js') || p.endsWith('.d.ts'))) { const c = fs.readFileSync(p, 'utf8'); const n = c.replaceAll('@kloks/', '@ultrst-armada/kloks/').replaceAll('@floks/', '@ultrst-armada/floks/').replaceAll('@ultrst/kloks/', '@ultrst-armada/kloks/').replaceAll('@ultrst/floks/', '@ultrst-armada/floks/').replaceAll('\\\"kloks/', '\\\"@ultrst-armada/kloks/').replaceAll('\\'kloks/', '\\'@ultrst-armada/kloks/').replaceAll('\\\"floks/', '\\\"@ultrst-armada/floks/').replaceAll('\\'floks/', '\\'@ultrst-armada/floks/'); if (c !== n) fs.writeFileSync(p, n); } } } })\"",
|
|
71
|
+
"test": "vitest run",
|
|
72
|
+
"typecheck": "pnpm -r run typecheck",
|
|
73
|
+
"clean": "pnpm -r run clean"
|
|
74
|
+
}
|
|
75
|
+
}
|
|
@@ -391,4 +391,117 @@ interface ThemeValidationResult {
|
|
|
391
391
|
declare function validateThemePackAgainstContract(themePack: ThemePack, contract?: ComponentThemeContract): ThemeValidationResult;
|
|
392
392
|
declare function loadThemePack(raw: unknown): ThemePack;
|
|
393
393
|
|
|
394
|
-
|
|
394
|
+
/**
|
|
395
|
+
* @file snapshot.ts
|
|
396
|
+
* @description Floks Contract Snapshot Generator, Diff Engine & Canonical Contract Definition.
|
|
397
|
+
* Enforces docs/04_THETA_COMPONENT_CONTRACTS.md and IMPLEMENTATION-SPEC.md:
|
|
398
|
+
* implementation_only => PATCH
|
|
399
|
+
* additive_compatible => MINOR
|
|
400
|
+
* breaking_contract_change => MAJOR
|
|
401
|
+
*/
|
|
402
|
+
|
|
403
|
+
declare const FLOKS_PUBLIC_SYMBOLS: string[];
|
|
404
|
+
declare const FloksContractSnapshotSchema: z.ZodObject<{
|
|
405
|
+
package: z.ZodLiteral<"@ultrst-armada/floks">;
|
|
406
|
+
version: z.ZodString;
|
|
407
|
+
timestamp: z.ZodNumber;
|
|
408
|
+
checksum: z.ZodString;
|
|
409
|
+
publicSymbols: z.ZodArray<z.ZodString, "many">;
|
|
410
|
+
components: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
411
|
+
componentId: z.ZodString;
|
|
412
|
+
componentVersion: z.ZodString;
|
|
413
|
+
slots: z.ZodArray<z.ZodString, "many">;
|
|
414
|
+
states: z.ZodArray<z.ZodString, "many">;
|
|
415
|
+
parameters: z.ZodArray<z.ZodString, "many">;
|
|
416
|
+
assets: z.ZodArray<z.ZodString, "many">;
|
|
417
|
+
}, "strip", z.ZodTypeAny, {
|
|
418
|
+
parameters?: string[];
|
|
419
|
+
componentId?: string;
|
|
420
|
+
componentVersion?: string;
|
|
421
|
+
slots?: string[];
|
|
422
|
+
states?: string[];
|
|
423
|
+
assets?: string[];
|
|
424
|
+
}, {
|
|
425
|
+
parameters?: string[];
|
|
426
|
+
componentId?: string;
|
|
427
|
+
componentVersion?: string;
|
|
428
|
+
slots?: string[];
|
|
429
|
+
states?: string[];
|
|
430
|
+
assets?: string[];
|
|
431
|
+
}>>;
|
|
432
|
+
errorCodes: z.ZodArray<z.ZodString, "many">;
|
|
433
|
+
}, "strip", z.ZodTypeAny, {
|
|
434
|
+
version?: string;
|
|
435
|
+
package?: "@ultrst-armada/floks";
|
|
436
|
+
timestamp?: number;
|
|
437
|
+
checksum?: string;
|
|
438
|
+
publicSymbols?: string[];
|
|
439
|
+
components?: Record<string, {
|
|
440
|
+
parameters?: string[];
|
|
441
|
+
componentId?: string;
|
|
442
|
+
componentVersion?: string;
|
|
443
|
+
slots?: string[];
|
|
444
|
+
states?: string[];
|
|
445
|
+
assets?: string[];
|
|
446
|
+
}>;
|
|
447
|
+
errorCodes?: string[];
|
|
448
|
+
}, {
|
|
449
|
+
version?: string;
|
|
450
|
+
package?: "@ultrst-armada/floks";
|
|
451
|
+
timestamp?: number;
|
|
452
|
+
checksum?: string;
|
|
453
|
+
publicSymbols?: string[];
|
|
454
|
+
components?: Record<string, {
|
|
455
|
+
parameters?: string[];
|
|
456
|
+
componentId?: string;
|
|
457
|
+
componentVersion?: string;
|
|
458
|
+
slots?: string[];
|
|
459
|
+
states?: string[];
|
|
460
|
+
assets?: string[];
|
|
461
|
+
}>;
|
|
462
|
+
errorCodes?: string[];
|
|
463
|
+
}>;
|
|
464
|
+
type FloksContractSnapshot = z.infer<typeof FloksContractSnapshotSchema>;
|
|
465
|
+
interface ContractDiffResult {
|
|
466
|
+
versionRecommendation: 'PATCH' | 'MINOR' | 'MAJOR';
|
|
467
|
+
hasBreakingChanges: boolean;
|
|
468
|
+
hasAdditiveChanges: boolean;
|
|
469
|
+
isIdentical: boolean;
|
|
470
|
+
removedSymbols: string[];
|
|
471
|
+
addedSymbols: string[];
|
|
472
|
+
removedComponents: string[];
|
|
473
|
+
addedComponents: string[];
|
|
474
|
+
changedComponents: string[];
|
|
475
|
+
summary: string;
|
|
476
|
+
}
|
|
477
|
+
/**
|
|
478
|
+
* Generate canonical contract snapshot for Floks.
|
|
479
|
+
*/
|
|
480
|
+
declare function createFloksSnapshot(version?: string, registry?: Record<string, ComponentThemeContract>, publicSymbols?: string[]): FloksContractSnapshot;
|
|
481
|
+
/**
|
|
482
|
+
* Computes semantic diff between previous and current Floks contract snapshots.
|
|
483
|
+
*/
|
|
484
|
+
declare function diffContractSnapshots(previous: FloksContractSnapshot, current: FloksContractSnapshot): ContractDiffResult;
|
|
485
|
+
declare const FLOKS_CANONICAL_CONTRACT: {
|
|
486
|
+
package: string;
|
|
487
|
+
version: string;
|
|
488
|
+
getSnapshot: () => {
|
|
489
|
+
version?: string;
|
|
490
|
+
package?: "@ultrst-armada/floks";
|
|
491
|
+
timestamp?: number;
|
|
492
|
+
checksum?: string;
|
|
493
|
+
publicSymbols?: string[];
|
|
494
|
+
components?: Record<string, {
|
|
495
|
+
parameters?: string[];
|
|
496
|
+
componentId?: string;
|
|
497
|
+
componentVersion?: string;
|
|
498
|
+
slots?: string[];
|
|
499
|
+
states?: string[];
|
|
500
|
+
assets?: string[];
|
|
501
|
+
}>;
|
|
502
|
+
errorCodes?: string[];
|
|
503
|
+
};
|
|
504
|
+
validateCompatibility: (themePack: ThemePack) => ThemeValidationResult;
|
|
505
|
+
};
|
|
506
|
+
|
|
507
|
+
export { type ComponentThemeContract, ComponentThemeContractSchema, type ContractDiffResult, FLOKS_CANONICAL_CONTRACT, FLOKS_COMPONENT_REGISTRY, FLOKS_PUBLIC_SYMBOLS, type FloksContractSnapshot, FloksContractSnapshotSchema, type ThemePack, ThemePackSchema, type ThemePackSlotBinding, ThemePackSlotBindingSchema, type ThemePackStateMapping, ThemePackStateMappingSchema, type ThemeTarget, ThemeTargetSchema, type ThemeValidationResult, type VisualParameter, VisualParameterSchema, type VisualSlot, VisualSlotSchema, type VisualState, VisualStateSchema, createFloksSnapshot, diffContractSnapshots, getComponentContract, listComponentContracts, loadThemePack, validateThemePackAgainstContract };
|
|
@@ -307,9 +307,171 @@ function loadThemePack(raw) {
|
|
|
307
307
|
}
|
|
308
308
|
return parsed;
|
|
309
309
|
}
|
|
310
|
+
|
|
311
|
+
// src/snapshot.ts
|
|
312
|
+
import { z as z2 } from "zod";
|
|
313
|
+
var FLOKS_PUBLIC_SYMBOLS = [
|
|
314
|
+
// UI Layout & Containers
|
|
315
|
+
"AppShell",
|
|
316
|
+
"TopToolbar",
|
|
317
|
+
"BottomStrip",
|
|
318
|
+
"FloatingDetailsPanel",
|
|
319
|
+
"SettingsTab",
|
|
320
|
+
"WorkspaceTilesMenu",
|
|
321
|
+
"UIParent",
|
|
322
|
+
"PanelModel",
|
|
323
|
+
"PanelProps",
|
|
324
|
+
// UI Base Primitives & Forms
|
|
325
|
+
"BaseButton",
|
|
326
|
+
"BaseCard",
|
|
327
|
+
"BaseInput",
|
|
328
|
+
"BaseSelect",
|
|
329
|
+
"BaseToggle",
|
|
330
|
+
"BaseBadge",
|
|
331
|
+
"ButtonModel",
|
|
332
|
+
"ButtonProps",
|
|
333
|
+
"CredentialField",
|
|
334
|
+
"LoginModal",
|
|
335
|
+
"ConfirmDialog",
|
|
336
|
+
"StatusIndicator",
|
|
337
|
+
// Canvas 2D
|
|
338
|
+
"InfiniteCanvas",
|
|
339
|
+
"DockBar",
|
|
340
|
+
"TileGrid",
|
|
341
|
+
"MonacoEditor",
|
|
342
|
+
// Contracts & Theta
|
|
343
|
+
"FLOKS_CANONICAL_CONTRACT",
|
|
344
|
+
"FLOKS_COMPONENT_REGISTRY",
|
|
345
|
+
"getComponentContract",
|
|
346
|
+
"listComponentContracts",
|
|
347
|
+
"validateThemePackAgainstContract",
|
|
348
|
+
"loadThemePack",
|
|
349
|
+
"createFloksSnapshot",
|
|
350
|
+
"diffContractSnapshots",
|
|
351
|
+
"ComponentThemeContractSchema",
|
|
352
|
+
"VisualSlotSchema",
|
|
353
|
+
"VisualStateSchema",
|
|
354
|
+
"VisualParameterSchema",
|
|
355
|
+
"ThemeTargetSchema",
|
|
356
|
+
"ThemePackSchema"
|
|
357
|
+
];
|
|
358
|
+
var FloksContractSnapshotSchema = z2.object({
|
|
359
|
+
package: z2.literal("@ultrst-armada/floks"),
|
|
360
|
+
version: z2.string(),
|
|
361
|
+
timestamp: z2.number(),
|
|
362
|
+
checksum: z2.string(),
|
|
363
|
+
publicSymbols: z2.array(z2.string()),
|
|
364
|
+
components: z2.record(
|
|
365
|
+
z2.object({
|
|
366
|
+
componentId: z2.string(),
|
|
367
|
+
componentVersion: z2.string(),
|
|
368
|
+
slots: z2.array(z2.string()),
|
|
369
|
+
states: z2.array(z2.string()),
|
|
370
|
+
parameters: z2.array(z2.string()),
|
|
371
|
+
assets: z2.array(z2.string())
|
|
372
|
+
})
|
|
373
|
+
),
|
|
374
|
+
errorCodes: z2.array(z2.string())
|
|
375
|
+
});
|
|
376
|
+
function createFloksSnapshot(version = "1.1.1", registry = FLOKS_COMPONENT_REGISTRY, publicSymbols = FLOKS_PUBLIC_SYMBOLS) {
|
|
377
|
+
const sortedSymbols = [...publicSymbols].sort();
|
|
378
|
+
const components = {};
|
|
379
|
+
for (const [compId, contract] of Object.entries(registry)) {
|
|
380
|
+
components[compId] = {
|
|
381
|
+
componentId: contract.componentId,
|
|
382
|
+
componentVersion: contract.componentVersion,
|
|
383
|
+
slots: contract.slots.map((s) => s.id).sort(),
|
|
384
|
+
states: contract.states.map((s) => s.id).sort(),
|
|
385
|
+
parameters: contract.parameters.map((p) => p.id).sort(),
|
|
386
|
+
assets: [...contract.assets].sort()
|
|
387
|
+
};
|
|
388
|
+
}
|
|
389
|
+
const errorCodes = [
|
|
390
|
+
"ERR_CONTRACT_VIOLATION",
|
|
391
|
+
"ERR_INTERNAL_IMPORT_FORBIDDEN",
|
|
392
|
+
"ERR_LOCAL_SHIM_DETECTED",
|
|
393
|
+
"ERR_THEME_TARGET_MISMATCH",
|
|
394
|
+
"ERR_SLOT_REJECTED",
|
|
395
|
+
"ERR_UNRECOGNIZED_STATE"
|
|
396
|
+
];
|
|
397
|
+
const rawJson = JSON.stringify({ sortedSymbols, components });
|
|
398
|
+
let hash = 0;
|
|
399
|
+
for (let i = 0; i < rawJson.length; i++) {
|
|
400
|
+
hash = (hash << 5) - hash + rawJson.charCodeAt(i);
|
|
401
|
+
hash |= 0;
|
|
402
|
+
}
|
|
403
|
+
const checksum = `sha256-${Math.abs(hash).toString(16)}`;
|
|
404
|
+
const snapshot = {
|
|
405
|
+
package: "@ultrst-armada/floks",
|
|
406
|
+
version,
|
|
407
|
+
timestamp: 176043e7,
|
|
408
|
+
checksum,
|
|
409
|
+
publicSymbols: sortedSymbols,
|
|
410
|
+
components,
|
|
411
|
+
errorCodes
|
|
412
|
+
};
|
|
413
|
+
return FloksContractSnapshotSchema.parse(snapshot);
|
|
414
|
+
}
|
|
415
|
+
function diffContractSnapshots(previous, current) {
|
|
416
|
+
const prevSymbols = new Set(previous.publicSymbols);
|
|
417
|
+
const currSymbols = new Set(current.publicSymbols);
|
|
418
|
+
const removedSymbols = previous.publicSymbols.filter((s) => !currSymbols.has(s));
|
|
419
|
+
const addedSymbols = current.publicSymbols.filter((s) => !prevSymbols.has(s));
|
|
420
|
+
const prevCompIds = Object.keys(previous.components);
|
|
421
|
+
const currCompIds = new Set(Object.keys(current.components));
|
|
422
|
+
const removedComponents = prevCompIds.filter((id) => !currCompIds.has(id));
|
|
423
|
+
const addedComponents = Object.keys(current.components).filter((id) => !previous.components[id]);
|
|
424
|
+
const changedComponents = [];
|
|
425
|
+
for (const compId of Object.keys(current.components)) {
|
|
426
|
+
if (previous.components[compId]) {
|
|
427
|
+
const prevC = previous.components[compId];
|
|
428
|
+
const currC = current.components[compId];
|
|
429
|
+
const removedSlots = prevC.slots.filter((s) => !currC.slots.includes(s));
|
|
430
|
+
const removedStates = prevC.states.filter((s) => !currC.states.includes(s));
|
|
431
|
+
if (removedSlots.length > 0 || removedStates.length > 0) {
|
|
432
|
+
changedComponents.push(
|
|
433
|
+
`${compId} breaking: removed slots [${removedSlots.join(", ")}], removed states [${removedStates.join(", ")}]`
|
|
434
|
+
);
|
|
435
|
+
} else if (prevC.slots.length !== currC.slots.length || prevC.states.length !== currC.states.length || prevC.parameters.length !== currC.parameters.length) {
|
|
436
|
+
changedComponents.push(`${compId} additive extension`);
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
}
|
|
440
|
+
const hasBreakingChanges = removedSymbols.length > 0 || removedComponents.length > 0 || changedComponents.some((c) => c.includes("breaking"));
|
|
441
|
+
const hasAdditiveChanges = addedSymbols.length > 0 || addedComponents.length > 0 || changedComponents.some((c) => c.includes("additive"));
|
|
442
|
+
const isIdentical = !hasBreakingChanges && !hasAdditiveChanges;
|
|
443
|
+
let versionRecommendation = "PATCH";
|
|
444
|
+
if (hasBreakingChanges) {
|
|
445
|
+
versionRecommendation = "MAJOR";
|
|
446
|
+
} else if (hasAdditiveChanges) {
|
|
447
|
+
versionRecommendation = "MINOR";
|
|
448
|
+
}
|
|
449
|
+
const summary = isIdentical ? "Identical public contract surface (PATCH compatible)." : hasBreakingChanges ? `Breaking contract change detected: ${removedSymbols.length} removed symbols, ${removedComponents.length} removed components (MAJOR bump required).` : `Additive compatible changes: ${addedSymbols.length} added symbols, ${addedComponents.length} added components (MINOR bump required).`;
|
|
450
|
+
return {
|
|
451
|
+
versionRecommendation,
|
|
452
|
+
hasBreakingChanges,
|
|
453
|
+
hasAdditiveChanges,
|
|
454
|
+
isIdentical,
|
|
455
|
+
removedSymbols,
|
|
456
|
+
addedSymbols,
|
|
457
|
+
removedComponents,
|
|
458
|
+
addedComponents,
|
|
459
|
+
changedComponents,
|
|
460
|
+
summary
|
|
461
|
+
};
|
|
462
|
+
}
|
|
463
|
+
var FLOKS_CANONICAL_CONTRACT = {
|
|
464
|
+
package: "@ultrst-armada/floks",
|
|
465
|
+
version: "1.1.1",
|
|
466
|
+
getSnapshot: () => createFloksSnapshot("1.1.1"),
|
|
467
|
+
validateCompatibility: (themePack) => validateThemePackAgainstContract(themePack)
|
|
468
|
+
};
|
|
310
469
|
export {
|
|
311
470
|
ComponentThemeContractSchema,
|
|
471
|
+
FLOKS_CANONICAL_CONTRACT,
|
|
312
472
|
FLOKS_COMPONENT_REGISTRY,
|
|
473
|
+
FLOKS_PUBLIC_SYMBOLS,
|
|
474
|
+
FloksContractSnapshotSchema,
|
|
313
475
|
ThemePackSchema,
|
|
314
476
|
ThemePackSlotBindingSchema,
|
|
315
477
|
ThemePackStateMappingSchema,
|
|
@@ -317,6 +479,8 @@ export {
|
|
|
317
479
|
VisualParameterSchema,
|
|
318
480
|
VisualSlotSchema,
|
|
319
481
|
VisualStateSchema,
|
|
482
|
+
createFloksSnapshot,
|
|
483
|
+
diffContractSnapshots,
|
|
320
484
|
getComponentContract,
|
|
321
485
|
listComponentContracts,
|
|
322
486
|
loadThemePack,
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://skipo.dev/schemas/floks-manifest.v1.json",
|
|
3
|
+
"package": "@floks/contracts",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"components": [
|
|
6
|
+
{
|
|
7
|
+
"id": "canonical-component-contracts",
|
|
8
|
+
"name": "Canonical Component Contracts & Snapshot Engine",
|
|
9
|
+
"export": "FLOKS_CANONICAL_CONTRACT",
|
|
10
|
+
"subpath": "contracts",
|
|
11
|
+
"targetTypes": ["App.contracts", "App.governance"]
|
|
12
|
+
}
|
|
13
|
+
]
|
|
14
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React__default from 'react';
|
|
2
|
-
import { GraphEntityParent } from '@ultrst-armada/kloks/state-graph';
|
|
2
|
+
import { GraphEntityParent, GraphEntityMetadata } from '@ultrst-armada/kloks/state-graph';
|
|
3
|
+
export { GraphEntityMetadata } from '@ultrst-armada/kloks/state-graph';
|
|
3
4
|
|
|
4
|
-
type GraphEntityMetadata = Record<string, any>;
|
|
5
5
|
interface UIInteractionState {
|
|
6
6
|
isHovered?: boolean;
|
|
7
7
|
isActive?: boolean;
|
|
@@ -230,4 +230,4 @@ declare class BadgeModel extends UIElementBase {
|
|
|
230
230
|
}
|
|
231
231
|
type BadgeTone = 'primary' | 'accent' | 'success' | 'warning' | 'danger' | 'info';
|
|
232
232
|
|
|
233
|
-
export { ActionButton, Badge, BadgeModel, type BadgeProps, type BadgeTone, ButtonModel, ButtonParent, type ButtonParentProps, type ButtonProps, type ButtonSize, type ButtonVariant, CardPanel, CategoryCardTile, ChannelStripTile, ClipCardTile, type ColorPalette, DangerButton, GhostButton,
|
|
233
|
+
export { ActionButton, Badge, BadgeModel, type BadgeProps, type BadgeTone, ButtonModel, ButtonParent, type ButtonParentProps, type ButtonProps, type ButtonSize, type ButtonVariant, CardPanel, CategoryCardTile, ChannelStripTile, ClipCardTile, type ColorPalette, DangerButton, GhostButton, IconButton, InputModel, InspectorPanel, ModalPanel, PanelModel, PanelParent, type PanelParentProps, type PanelProps, type PanelVariant, SelectInput, type SelectInputProps, SliderInput, type SliderInputProps, SpawnOptionTile, StatusDot, type StatusDotProps, TelemetryPill, type TelemetryPillProps, TextInput, type TextInputProps, TileModel, TileParent, type TileParentProps, type TileVariant, ToggleButton, ToggleInput, type ToggleInputProps, ToolbarPanel, type TooltipDirection, type UIBaseProps, UIElementBase, type UIInteractionState, UIModel, UIParent, type UIParentProps, type UIProps, type UIRole, type UISize, type UIStyleTokens, type UIVariant, registerPaletteResolver };
|
|
@@ -10,7 +10,7 @@ export { SettingsTab, SettingsTabProps, ThemeSettingsSection } from './component
|
|
|
10
10
|
export { LoginModal, LoginModalProps } from './components/auth/index.js';
|
|
11
11
|
export { SrklBackblazeAccount, SrklBackblazeTile, StorageOptionTiles, StoragePresetTile, StorageSelection, WorkspaceRecord, WorkspaceSecondaryClone, WorkspaceSecondaryClonesPanel, WorkspaceStorageReadonlyPanel, WorkspaceTilesMenu, WorkspaceTilesMenuProps } from './components/workspace/index.js';
|
|
12
12
|
export { DEFAULT_PALETTE_ID, THEME_STORAGE_KEY, ThemeContextValue, ThemeProvider, ThemeProviderProps, applyPaletteToDocument, getActivePalette, paletteToSkipoThemePack, subscribeToPalette, usePalette, useTheme } from './palette/index.js';
|
|
13
|
-
export { ActionButton, Badge, BadgeModel, BadgeProps, BadgeTone, ButtonModel, ButtonParent, ButtonParentProps, ButtonProps, ButtonSize, ButtonVariant, CardPanel, CategoryCardTile, ChannelStripTile, ClipCardTile, DangerButton, GhostButton,
|
|
13
|
+
export { ActionButton, Badge, BadgeModel, BadgeProps, BadgeTone, ButtonModel, ButtonParent, ButtonParentProps, ButtonProps, ButtonSize, ButtonVariant, CardPanel, CategoryCardTile, ChannelStripTile, ClipCardTile, DangerButton, GhostButton, IconButton, InputModel, InspectorPanel, ModalPanel, PanelModel, PanelParent, PanelParentProps, PanelProps, PanelVariant, SelectInput, SelectInputProps, SliderInput, SliderInputProps, SpawnOptionTile, StatusDot, StatusDotProps, TelemetryPill, TelemetryPillProps, TextInput, TextInputProps, TileModel, TileParent, TileParentProps, TileVariant, ToggleButton, ToggleInput, ToggleInputProps, ToolbarPanel, TooltipDirection, UIBaseProps, UIElementBase, UIInteractionState, UIModel, UIParent, UIParentProps, UIProps, UIRole, UISize, UIStyleTokens, UIVariant, registerPaletteResolver } from './hierarchy/index.js';
|
|
14
|
+
export { GraphEntityMetadata } from '@ultrst-armada/kloks/state-graph';
|
|
14
15
|
import 'zod';
|
|
15
16
|
import 'react';
|
|
16
|
-
import '@ultrst-armada/kloks/state-graph';
|
|
@@ -129,6 +129,13 @@ import {
|
|
|
129
129
|
import {
|
|
130
130
|
LoginModal
|
|
131
131
|
} from "./chunk-S227WJ5E.js";
|
|
132
|
+
import {
|
|
133
|
+
BaseSelect,
|
|
134
|
+
BaseTextarea,
|
|
135
|
+
BaseToggle,
|
|
136
|
+
CredentialField,
|
|
137
|
+
KNOWN_CREDENTIAL_URLS
|
|
138
|
+
} from "./chunk-KIFQA7L6.js";
|
|
132
139
|
import "./chunk-5ZMXFCD4.js";
|
|
133
140
|
import {
|
|
134
141
|
ApiCallIndicator,
|
|
@@ -137,13 +144,6 @@ import {
|
|
|
137
144
|
StatusLight,
|
|
138
145
|
SystemMessageDisplay
|
|
139
146
|
} from "./chunk-C3L53YN4.js";
|
|
140
|
-
import {
|
|
141
|
-
BaseSelect,
|
|
142
|
-
BaseTextarea,
|
|
143
|
-
BaseToggle,
|
|
144
|
-
CredentialField,
|
|
145
|
-
KNOWN_CREDENTIAL_URLS
|
|
146
|
-
} from "./chunk-KIFQA7L6.js";
|
|
147
147
|
import {
|
|
148
148
|
ConfirmDialog,
|
|
149
149
|
CopyableErrorAlert,
|