@fluid-app/fluid-cli-portal 0.1.53 → 0.1.54
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/dist/{backend-dev-plugin-B9-S4Is-.mjs → backend-dev-plugin-CY3yxgJ1.mjs} +1 -1
- package/dist/{backend-dev-plugin-B9-S4Is-.mjs.map → backend-dev-plugin-CY3yxgJ1.mjs.map} +1 -1
- package/dist/index.d.mts +622 -421
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +719 -1815
- package/dist/index.mjs.map +1 -1
- package/dist/{portal-dev-plugin-ByYelgFg.mjs → portal-dev-plugin-CHlxpXc5.mjs} +1 -1
- package/dist/{portal-dev-plugin-ByYelgFg.mjs.map → portal-dev-plugin-CHlxpXc5.mjs.map} +1 -1
- package/dist/portal-widget-dev-plugin-B53Lf9Ke.mjs +144 -0
- package/dist/portal-widget-dev-plugin-B53Lf9Ke.mjs.map +1 -0
- package/dist/pull-CUR8tbW9.mjs +1633 -0
- package/dist/pull-CUR8tbW9.mjs.map +1 -0
- package/dist/sdk.gen-DuPhfdxN.mjs +469 -0
- package/dist/sdk.gen-DuPhfdxN.mjs.map +1 -0
- package/dist/src-CpH5SpDH.mjs +2157 -0
- package/dist/src-CpH5SpDH.mjs.map +1 -0
- package/dist/vite-plugin.d.mts +4 -1
- package/dist/vite-plugin.d.mts.map +1 -1
- package/dist/vite-plugin.mjs +5 -3
- package/package.json +7 -5
- package/templates/base/AGENTS.md +4 -0
- package/templates/base/skills/fluid-portal-authoring/SKILL.md +113 -1
- package/dist/pull-C3yj9L07.mjs +0 -1232
- package/dist/pull-C3yj9L07.mjs.map +0 -1
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
2
|
import { CliError, FluidPlugin, Result } from "@fluid-app/fluid-cli";
|
|
3
|
+
import { Plugin } from "vite";
|
|
3
4
|
|
|
4
5
|
//#region src/types.d.ts
|
|
5
6
|
/**
|
|
@@ -381,26 +382,6 @@ declare function gitAutoCommit(cwd: string, message: string, options?: GitAutoCo
|
|
|
381
382
|
declare function gitPush(cwd: string, remoteUrl: string, branch?: string): Promise<void>;
|
|
382
383
|
//#endregion
|
|
383
384
|
//#region src/api/git-credential.d.ts
|
|
384
|
-
/**
|
|
385
|
-
* Portal git-credential adapter (the "invisible git" seam).
|
|
386
|
-
*
|
|
387
|
-
* Mints a short-lived (~1h) remote URL with an embedded installation
|
|
388
|
-
* token for the portal's provisioned GitHub repo. The URL is used
|
|
389
|
-
* immediately for one git op and discarded — NEVER persisted or logged.
|
|
390
|
-
*
|
|
391
|
-
* The backend endpoint (GitSync phase 006, portal adapter) mirrors the
|
|
392
|
-
* widget contract exactly:
|
|
393
|
-
*
|
|
394
|
-
* POST <endpoint> -> 201 { git_credential: { remote_url, expires_at }, status, meta }
|
|
395
|
-
* errors: 409 not_provisioned/not_connected, 502 vendor_error, 422 else
|
|
396
|
-
* { error_message, errors: { type: [type] }, meta }
|
|
397
|
-
*
|
|
398
|
-
* The exact path is still being finalized as 006 lands, so it lives in
|
|
399
|
-
* one constant here. Until the endpoint ships to prod a request 404s —
|
|
400
|
-
* which we surface as `unavailable` so callers degrade gracefully
|
|
401
|
-
* (warn + skip the git sync, proceed with the normal content push).
|
|
402
|
-
*/
|
|
403
|
-
/** Minted credential — token embedded in `remote_url`. Treat as secret. */
|
|
404
385
|
interface PortalGitCredential {
|
|
405
386
|
readonly remote_url: string;
|
|
406
387
|
readonly expires_at: string;
|
|
@@ -408,15 +389,21 @@ interface PortalGitCredential {
|
|
|
408
389
|
/**
|
|
409
390
|
* Outcome of a credential request. `unavailable` means "no repo to sync"
|
|
410
391
|
* (endpoint missing / not provisioned / not connected). Its `retryable`
|
|
411
|
-
* flag distinguishes backend states that
|
|
412
|
-
*
|
|
413
|
-
*
|
|
414
|
-
*
|
|
415
|
-
*
|
|
416
|
-
*
|
|
417
|
-
*
|
|
418
|
-
*
|
|
419
|
-
*
|
|
392
|
+
* flag distinguishes backend states that resolve on their own from ones
|
|
393
|
+
* that never will.
|
|
394
|
+
*
|
|
395
|
+
* Both `not_provisioned` and `not_connected` are retryable. The first
|
|
396
|
+
* self-heals because the credential request itself triggers provisioning;
|
|
397
|
+
* the second is the state a brand-new definition sits in for its first
|
|
398
|
+
* few seconds, while the Sidekiq job that creates the GitHub repo runs.
|
|
399
|
+
* (An earlier revision read `not_connected` as a durable "this company's
|
|
400
|
+
* Git integration isn't connected" — that was a misdiagnosis, and it made
|
|
401
|
+
* every newly created portal give up before its repo was ready.)
|
|
402
|
+
*
|
|
403
|
+
* `repoStatus` carries the underlying GitSync repo status when the API
|
|
404
|
+
* reports one; `disconnected` is the one value a retry can never fix.
|
|
405
|
+
* `conflictType` carries the raw 409 conflict type so callers can tailor
|
|
406
|
+
* messaging. `error` is an unexpected transport or provider failure.
|
|
420
407
|
*/
|
|
421
408
|
type GitCredentialOutcome = {
|
|
422
409
|
readonly status: "ok";
|
|
@@ -426,6 +413,7 @@ type GitCredentialOutcome = {
|
|
|
426
413
|
readonly reason: string;
|
|
427
414
|
readonly retryable: boolean;
|
|
428
415
|
readonly conflictType?: string;
|
|
416
|
+
readonly repoStatus?: string;
|
|
429
417
|
} | {
|
|
430
418
|
readonly status: "error";
|
|
431
419
|
readonly reason: string;
|
|
@@ -498,394 +486,407 @@ declare function createPortalProject(appName: string, options: CreateOptions, co
|
|
|
498
486
|
//#region src/commands/pull.d.ts
|
|
499
487
|
declare const pullCommand: Command;
|
|
500
488
|
//#endregion
|
|
501
|
-
//#region ../../api-clients/
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
theme_ids?: number[];
|
|
622
|
-
permissions?: components["schemas"]["FluidOSDynamicPayload"];
|
|
623
|
-
} | null;
|
|
624
|
-
};
|
|
625
|
-
FluidOSScreenUpdateRequest: {
|
|
626
|
-
screen?: {
|
|
627
|
-
name?: string;
|
|
628
|
-
slug?: string;
|
|
629
|
-
component_tree?: components["schemas"]["FluidOSDynamicPayload"] | null;
|
|
630
|
-
} | null;
|
|
631
|
-
};
|
|
632
|
-
FluidOSThemeUpdateRequest: {
|
|
633
|
-
theme?: {
|
|
634
|
-
name?: string;
|
|
635
|
-
active?: boolean;
|
|
636
|
-
config?: components["schemas"]["FluidOSDynamicPayload"];
|
|
637
|
-
} | null;
|
|
638
|
-
};
|
|
639
|
-
FluidOSVersionUpdateRequest: {
|
|
640
|
-
version?: {
|
|
641
|
-
active?: boolean;
|
|
642
|
-
} | null;
|
|
643
|
-
}; /** FluidOS::NavigationItem */
|
|
644
|
-
FluidOSNavigationItem: {
|
|
645
|
-
id: number;
|
|
646
|
-
icon?: string | null;
|
|
647
|
-
label?: string | null;
|
|
648
|
-
parent_id?: number | null;
|
|
649
|
-
position?: number | null;
|
|
650
|
-
screen_id?: number | null;
|
|
651
|
-
slug?: string | null; /** @enum {string} */
|
|
652
|
-
source?: "user" | "system" | "code";
|
|
653
|
-
children?: components["schemas"]["FluidOSNavigationItem"][];
|
|
654
|
-
}; /** FluidOS::Screen */
|
|
655
|
-
FluidOSScreenBasic: {
|
|
656
|
-
id: number;
|
|
657
|
-
name?: string | null;
|
|
658
|
-
slug?: string | null;
|
|
659
|
-
definition_id: number;
|
|
660
|
-
}; /** FluidOS::Screen */
|
|
661
|
-
FluidOSScreen: {
|
|
662
|
-
id: number;
|
|
663
|
-
name?: string | null;
|
|
664
|
-
slug?: string | null;
|
|
665
|
-
definition_id: number;
|
|
666
|
-
component_tree?: components["schemas"]["FluidOSDynamicPayload"];
|
|
667
|
-
}; /** FluidOS::Theme */
|
|
668
|
-
FluidOSTheme: {
|
|
669
|
-
id: number;
|
|
670
|
-
config?: components["schemas"]["FluidOSDynamicPayload"];
|
|
671
|
-
active?: boolean | null;
|
|
672
|
-
name?: string | null;
|
|
673
|
-
definition_id: number;
|
|
674
|
-
}; /** FluidOS::Navigation */
|
|
675
|
-
FluidOSNavigationBasic: {
|
|
676
|
-
id: number;
|
|
677
|
-
name?: string | null;
|
|
678
|
-
definition_id: number; /** @enum {string} */
|
|
679
|
-
platform: "web" | "mobile";
|
|
680
|
-
}; /** FluidOS::Navigation */
|
|
681
|
-
FluidOSNavigation: {
|
|
682
|
-
id: number;
|
|
683
|
-
name?: string | null;
|
|
684
|
-
definition_id: number; /** @enum {string} */
|
|
685
|
-
platform: "web" | "mobile";
|
|
686
|
-
screens?: components["schemas"]["FluidOSScreen"][];
|
|
687
|
-
}; /** FluidOS::Navigation */
|
|
688
|
-
FluidOSNavigationWithItems: {
|
|
689
|
-
id: number;
|
|
690
|
-
name?: string | null;
|
|
691
|
-
definition_id: number; /** @enum {string} */
|
|
692
|
-
platform: "web" | "mobile";
|
|
693
|
-
navigation_items?: components["schemas"]["FluidOSNavigationItem"][];
|
|
694
|
-
}; /** FluidOS::Profile */
|
|
695
|
-
FluidOSProfile: {
|
|
696
|
-
id: number;
|
|
697
|
-
name?: string | null;
|
|
698
|
-
default?: boolean | null;
|
|
699
|
-
permissions?: components["schemas"]["FluidOSDynamicPayload"];
|
|
700
|
-
definition_id: number;
|
|
701
|
-
navigation?: components["schemas"]["FluidOSNavigationWithItems"] | null;
|
|
702
|
-
mobile_navigation?: components["schemas"]["FluidOSNavigationWithItems"];
|
|
703
|
-
themes?: components["schemas"]["FluidOSTheme"][];
|
|
704
|
-
}; /** FluidOS::Profile */
|
|
705
|
-
FluidOSProfileWithScreens: {
|
|
706
|
-
id: number;
|
|
707
|
-
name?: string | null;
|
|
708
|
-
default?: boolean | null;
|
|
709
|
-
permissions?: components["schemas"]["FluidOSDynamicPayload"];
|
|
710
|
-
definition_id: number;
|
|
711
|
-
navigation?: components["schemas"]["FluidOSNavigationWithItems"] | null;
|
|
712
|
-
mobile_navigation?: components["schemas"]["FluidOSNavigationWithItems"];
|
|
713
|
-
themes?: components["schemas"]["FluidOSTheme"][];
|
|
714
|
-
screens?: components["schemas"]["FluidOSScreen"][];
|
|
715
|
-
}; /** FluidOS::Definition */
|
|
716
|
-
FluidOSDefinitionBasic: {
|
|
717
|
-
id: number;
|
|
718
|
-
name?: string | null;
|
|
719
|
-
active?: boolean | null;
|
|
720
|
-
}; /** FluidOS::Definition */
|
|
721
|
-
FluidOSDefinition: {
|
|
722
|
-
id: number;
|
|
723
|
-
name?: string | null;
|
|
724
|
-
active?: boolean | null;
|
|
725
|
-
profiles?: components["schemas"]["FluidOSProfile"][];
|
|
726
|
-
screens?: components["schemas"]["FluidOSScreenBasic"][];
|
|
727
|
-
navigations?: components["schemas"]["FluidOSNavigationBasic"][];
|
|
728
|
-
themes?: components["schemas"]["FluidOSTheme"][];
|
|
729
|
-
}; /** FluidOS::Version */
|
|
730
|
-
FluidOSVersion: {
|
|
731
|
-
id: number;
|
|
732
|
-
active?: boolean | null;
|
|
733
|
-
manifest?: components["schemas"]["FluidOSDynamicPayload"]; /** Format: date-time */
|
|
734
|
-
published_at?: string | null;
|
|
735
|
-
definition_id: number;
|
|
736
|
-
}; /** @description Couples each widget package artifact path class with the only accepted contentType value. */
|
|
737
|
-
FluidOSWidgetPackageVersionArtifactContentTypeConstraint: {
|
|
738
|
-
/** @constant */path: "widget.js"; /** @constant */
|
|
739
|
-
contentType: "application/javascript";
|
|
740
|
-
} | {
|
|
741
|
-
/** @constant */path: "manifest.json"; /** @constant */
|
|
742
|
-
contentType: "application/json";
|
|
743
|
-
} | {
|
|
744
|
-
path: string; /** @constant */
|
|
745
|
-
contentType: "text/css";
|
|
746
|
-
} | {
|
|
747
|
-
path: string; /** @constant */
|
|
748
|
-
contentType: "application/json";
|
|
749
|
-
}; /** @description Couples each widget package artifact path class with the only accepted contentType/content_type alias values when supplied. */
|
|
750
|
-
FluidOSWidgetPackageVersionCompletionArtifactContentTypeConstraint: {
|
|
751
|
-
/** @constant */path: "widget.js"; /** @constant */
|
|
752
|
-
contentType?: "application/javascript"; /** @constant */
|
|
753
|
-
content_type?: "application/javascript";
|
|
754
|
-
} | {
|
|
755
|
-
/** @constant */path: "manifest.json"; /** @constant */
|
|
756
|
-
contentType?: "application/json"; /** @constant */
|
|
757
|
-
content_type?: "application/json";
|
|
758
|
-
} | {
|
|
759
|
-
path: string; /** @constant */
|
|
760
|
-
contentType?: "text/css"; /** @constant */
|
|
761
|
-
content_type?: "text/css";
|
|
762
|
-
} | {
|
|
763
|
-
path: string; /** @constant */
|
|
764
|
-
contentType?: "application/json"; /** @constant */
|
|
765
|
-
content_type?: "application/json";
|
|
766
|
-
}; /** @description Artifact metadata required before Fluid OS widget package upload URLs can be issued. Artifact paths must be unique within the request, and the artifact list must include widget.js and manifest.json before upload URLs are issued. Artifact paths are top-level package artifact filenames only; accepted names are widget.js, manifest.json, *.css, and *.js.map with no slash paths. Accepted content types are application/javascript for widget.js, application/json for manifest.json and *.js.map, and text/css for *.css. Byte sizes are non-negative and checked against configured per-artifact and bundle limits; defaults are 5 MiB per artifact and 10 MiB per bundle unless environment config changes them. */
|
|
767
|
-
FluidOSWidgetPackageVersionArtifactInput: {
|
|
768
|
-
/** @description Top-level package artifact filename. Accepted names are widget.js, manifest.json, *.css, or *.js.map; slash paths are not accepted. */path: string; /** @description Expected SHA256 checksum for the artifact content. */
|
|
769
|
-
sha256: string; /** @description Expected artifact size in bytes. Checked against configured per-artifact and bundle limits; defaults are 5 MiB per artifact and 10 MiB per bundle unless environment config changes them. */
|
|
770
|
-
bytes: number;
|
|
771
|
-
/**
|
|
772
|
-
* @description MIME content type used when uploading the artifact. Accepted values are application/javascript for widget.js, application/json for manifest.json and *.js.map, and text/css for *.css.
|
|
773
|
-
* @enum {string}
|
|
774
|
-
*/
|
|
775
|
-
contentType: "application/javascript" | "application/json" | "text/css";
|
|
776
|
-
} & components["schemas"]["FluidOSWidgetPackageVersionArtifactContentTypeConstraint"]; /** @description Request payload for starting a company-owned Fluid OS widget package version publish flow. Artifact paths must be unique top-level package artifact filenames. The artifacts list must include widget.js and manifest.json so the API can issue upload URLs and later verify the completed upload. */
|
|
777
|
-
FluidOSWidgetPackageVersionCreateRequest: {
|
|
778
|
-
/** @description Non-empty, object-path-safe company-owned widget package key. Use URL-safe characters only; . and .. are not accepted. */package_key: string; /** @description Non-empty, object-path-safe widget package version identifier accepted in the URL and upload path. Dotted versions such as 1.0.0 are accepted; only exact . or .. path segments and characters outside [A-Za-z0-9._~-] are rejected. */
|
|
779
|
-
version: string; /** @description Fluid OS builder version that produced this package. */
|
|
780
|
-
builder_version: string; /** @description Fluid OS CLI version that published this package. */
|
|
781
|
-
cli_version: string; /** @description Fluid OS runtime version targeted by this package. */
|
|
782
|
-
runtime_version: string; /** @description SHA256 checksum of the serialized manifest JSON. */
|
|
783
|
-
manifest_hash: string; /** @description Widget package manifest JSON. It must use the supported widget manifest structure, contain at least one extractable widget type, and every widget type in that structure must use the company-owned prefix `company.<package_key>.`. */
|
|
784
|
-
manifest: {
|
|
785
|
-
[key: string]: components["schemas"]["JsonValue"];
|
|
786
|
-
}; /** @description Top-level package artifacts to upload. The list must include widget.js and manifest.json. */
|
|
787
|
-
artifacts: components["schemas"]["FluidOSWidgetPackageVersionArtifactInput"][] & (unknown & unknown); /** @description Optional publisher metadata stored with the package version. */
|
|
788
|
-
build_metadata?: {
|
|
789
|
-
[key: string]: components["schemas"]["JsonValue"];
|
|
790
|
-
};
|
|
791
|
-
}; /** @description Upload instructions for a widget package artifact. */
|
|
792
|
-
FluidOSWidgetPackageVersionUpload: {
|
|
793
|
-
/** @description Top-level package artifact filename. */path: string; /** Format: uri */
|
|
794
|
-
upload_url: string; /** Format: uri */
|
|
795
|
-
public_url: string;
|
|
796
|
-
}; /** @description Upload session details for a pending Fluid OS widget package version. */
|
|
797
|
-
FluidOSWidgetPackageVersionCreateResponse: {
|
|
798
|
-
version_id: number; /** Format: uri */
|
|
799
|
-
artifact_base_url: string;
|
|
800
|
-
uploads: components["schemas"]["FluidOSWidgetPackageVersionUpload"][];
|
|
801
|
-
}; /** @description Optional artifact metadata supplied when completing a widget package upload. Artifact paths must be unique top-level package artifact filenames within the request; accepted names are widget.js, manifest.json, *.css, and *.js.map with no slash paths. Accepted content types are application/javascript for widget.js, application/json for manifest.json and *.js.map, and text/css for *.css. Byte sizes are non-negative and checked against configured per-artifact and bundle limits; defaults are 5 MiB per artifact and 10 MiB per bundle unless environment config changes them. sha256/checksum, bytes/size, and contentType/content_type are accepted aliases and must match when both aliases are present; supplied artifact metadata is compared with the stored upload-session/package version artifact metadata during verification. If artifacts are supplied, they must include exactly the stored upload-session artifact paths. Manifest verification is separate and happens against uploaded artifact content. */
|
|
802
|
-
FluidOSWidgetPackageVersionCompletionArtifactInput: {
|
|
803
|
-
/** @description Top-level package artifact filename. Accepted names are widget.js, manifest.json, *.css, or *.js.map; slash paths are not accepted. */path: string; /** @description Expected SHA256 checksum for the artifact content. */
|
|
804
|
-
sha256?: string; /** @description Alias for sha256. */
|
|
805
|
-
checksum?: string; /** @description Expected artifact size in bytes. Checked against configured per-artifact and bundle limits; defaults are 5 MiB per artifact and 10 MiB per bundle unless environment config changes them. */
|
|
806
|
-
bytes?: number; /** @description Alias for bytes; checked against the same configured per-artifact and bundle limits. */
|
|
807
|
-
size?: number;
|
|
808
|
-
/**
|
|
809
|
-
* @description MIME content type for the artifact. Accepted values are application/javascript for widget.js, application/json for manifest.json and *.js.map, and text/css for *.css.
|
|
810
|
-
* @enum {string}
|
|
811
|
-
*/
|
|
812
|
-
contentType?: "application/javascript" | "application/json" | "text/css";
|
|
813
|
-
/**
|
|
814
|
-
* @description Alias for contentType.
|
|
815
|
-
* @enum {string}
|
|
816
|
-
*/
|
|
817
|
-
content_type?: "application/javascript" | "application/json" | "text/css";
|
|
818
|
-
} & components["schemas"]["FluidOSWidgetPackageVersionCompletionArtifactContentTypeConstraint"]; /** @description Request payload for verifying uploaded company-owned Fluid OS widget package artifacts. The version path parameter, optional package_key, and any supplied artifact metadata must match the stored upload-session/package version artifact metadata before the package version is approved. If artifacts are supplied, they must include exactly the stored upload-session artifact paths. Uploaded manifest.json is verified for matching packageId, matching version, and valid company-owned `company.<package_key>.` widget type prefixes. */
|
|
819
|
-
FluidOSWidgetPackageVersionCompleteUploadRequest: {
|
|
820
|
-
/** @description Optional non-empty, object-path-safe widget package key. When omitted, the company's widget package is used; . and .. are not accepted. */package_key?: string | null; /** @description Optional artifact metadata to compare with the stored upload session. When supplied, the list must include exactly the stored upload-session artifact paths; omissions and extras are rejected. */
|
|
821
|
-
artifacts?: components["schemas"]["FluidOSWidgetPackageVersionCompletionArtifactInput"][];
|
|
822
|
-
}; /** @description Approved Fluid OS widget package version details. */
|
|
823
|
-
FluidOSWidgetPackageVersionCompleteUploadResponse: {
|
|
824
|
-
status: string;
|
|
825
|
-
packageId: string; /** @description Non-empty, object-path-safe widget package version identifier. Dotted versions such as 1.0.0 are accepted; only exact . or .. path segments and characters outside [A-Za-z0-9._~-] are rejected. */
|
|
826
|
-
version: string; /** Format: uri */
|
|
827
|
-
scriptUrl: string;
|
|
828
|
-
cssUrls: string[]; /** Format: uri */
|
|
829
|
-
manifestUrl: string;
|
|
830
|
-
}; /** @description Flat verification failure response returned when uploaded artifacts do not match the package manifest or expected metadata. */
|
|
831
|
-
FluidOSWidgetPackageVersionVerificationErrorResponse: {
|
|
832
|
-
/** @enum {string} */status: "error";
|
|
833
|
-
error_message: string;
|
|
834
|
-
details: {
|
|
835
|
-
[key: string]: components["schemas"]["JsonValue"];
|
|
836
|
-
};
|
|
837
|
-
}; /** @description Dynamic Fluid OS JSON payload whose keys are defined by the app builder configuration. */
|
|
838
|
-
FluidOSDynamicPayload: {
|
|
839
|
-
[key: string]: components["schemas"]["JsonValue"];
|
|
840
|
-
} | null;
|
|
841
|
-
FluidOSWidgetPackageCatalogEntry: {
|
|
842
|
-
/**
|
|
843
|
-
* @description Package ownership source for the shared widget loading path.
|
|
844
|
-
* @enum {string}
|
|
845
|
-
*/
|
|
846
|
-
source: "company" | "droplet";
|
|
847
|
-
/**
|
|
848
|
-
* @description Runtime package identifier prefixed by source.
|
|
849
|
-
* @example company.portal-home
|
|
850
|
-
* @example droplet.reviews
|
|
851
|
-
*/
|
|
852
|
-
packageId: string; /** @description Approved package version currently active for this owner. */
|
|
853
|
-
version: string; /** @description Public module script URL for the package runtime artifact. */
|
|
854
|
-
scriptUrl: string | null; /** @description Public stylesheet URLs for the package runtime artifacts. */
|
|
855
|
-
cssUrls: string[]; /** @description Public URL for the package manifest artifact. */
|
|
856
|
-
manifestUrl: string | null; /** @description Approved package manifest JSON used by the runtime loader. */
|
|
857
|
-
manifest: {
|
|
858
|
-
[key: string]: components["schemas"]["JsonValue"];
|
|
859
|
-
};
|
|
860
|
-
};
|
|
861
|
-
FluidOSWidgetPackageCatalogResponse: {
|
|
862
|
-
packages: components["schemas"]["FluidOSWidgetPackageCatalogEntry"][];
|
|
863
|
-
};
|
|
864
|
-
FluidOSWidgetPackageDropletForbiddenResponse: {
|
|
865
|
-
error: {
|
|
866
|
-
message: string;
|
|
867
|
-
details?: {
|
|
868
|
-
[key: string]: components["schemas"]["JsonValue"];
|
|
869
|
-
};
|
|
870
|
-
}; /** @enum {integer} */
|
|
871
|
-
status: 403;
|
|
872
|
-
meta?: components["schemas"]["Meta"];
|
|
873
|
-
};
|
|
874
|
-
FluidOSWidgetPackageRoleForbiddenResponse: {
|
|
875
|
-
message: string;
|
|
876
|
-
};
|
|
877
|
-
FluidOSWidgetPackagePermissionForbiddenResponse: {
|
|
878
|
-
error: string;
|
|
879
|
-
};
|
|
880
|
-
FluidOSWidgetPackageForbiddenResponse: components["schemas"]["FluidOSWidgetPackageDropletForbiddenResponse"] | components["schemas"]["FluidOSWidgetPackageRoleForbiddenResponse"] | components["schemas"]["FluidOSWidgetPackagePermissionForbiddenResponse"];
|
|
881
|
-
};
|
|
882
|
-
responses: never;
|
|
883
|
-
parameters: never;
|
|
884
|
-
requestBodies: never;
|
|
885
|
-
headers: never;
|
|
886
|
-
pathItems: never;
|
|
489
|
+
//#region ../../api-clients/hey-api-fetch-runtime/src/generated/core/auth.gen.d.ts
|
|
490
|
+
type AuthToken = string | undefined;
|
|
491
|
+
interface Auth {
|
|
492
|
+
/**
|
|
493
|
+
* Which part of the request do we use to send the auth?
|
|
494
|
+
*
|
|
495
|
+
* @default 'header'
|
|
496
|
+
*/
|
|
497
|
+
in?: "header" | "query" | "cookie";
|
|
498
|
+
/**
|
|
499
|
+
* A unique identifier for the security scheme.
|
|
500
|
+
*
|
|
501
|
+
* Defined only when there are multiple security schemes whose `Auth`
|
|
502
|
+
* shape would otherwise be identical.
|
|
503
|
+
*/
|
|
504
|
+
key?: string;
|
|
505
|
+
/**
|
|
506
|
+
* Header or query parameter name.
|
|
507
|
+
*
|
|
508
|
+
* @default 'Authorization'
|
|
509
|
+
*/
|
|
510
|
+
name?: string;
|
|
511
|
+
scheme?: "basic" | "bearer";
|
|
512
|
+
type: "apiKey" | "http";
|
|
513
|
+
}
|
|
514
|
+
//#endregion
|
|
515
|
+
//#region ../../api-clients/hey-api-fetch-runtime/src/generated/core/pathSerializer.gen.d.ts
|
|
516
|
+
interface SerializerOptions<T> {
|
|
517
|
+
/**
|
|
518
|
+
* @default true
|
|
519
|
+
*/
|
|
520
|
+
explode: boolean;
|
|
521
|
+
style: T;
|
|
522
|
+
}
|
|
523
|
+
type ArrayStyle = "form" | "spaceDelimited" | "pipeDelimited";
|
|
524
|
+
type ObjectStyle = "form" | "deepObject";
|
|
525
|
+
//#endregion
|
|
526
|
+
//#region ../../api-clients/hey-api-fetch-runtime/src/generated/core/bodySerializer.gen.d.ts
|
|
527
|
+
type QuerySerializer = (query: Record<string, unknown>) => string;
|
|
528
|
+
type BodySerializer = (body: unknown) => unknown;
|
|
529
|
+
type QuerySerializerOptionsObject = {
|
|
530
|
+
allowReserved?: boolean;
|
|
531
|
+
array?: Partial<SerializerOptions<ArrayStyle>>;
|
|
532
|
+
object?: Partial<SerializerOptions<ObjectStyle>>;
|
|
533
|
+
};
|
|
534
|
+
type QuerySerializerOptions = QuerySerializerOptionsObject & {
|
|
535
|
+
/**
|
|
536
|
+
* Per-parameter serialization overrides. When provided, these settings
|
|
537
|
+
* override the global array/object settings for specific parameter names.
|
|
538
|
+
*/
|
|
539
|
+
parameters?: Record<string, QuerySerializerOptionsObject>;
|
|
540
|
+
};
|
|
541
|
+
//#endregion
|
|
542
|
+
//#region ../../api-clients/hey-api-fetch-runtime/src/generated/core/types.gen.d.ts
|
|
543
|
+
type HttpMethod = "connect" | "delete" | "get" | "head" | "options" | "patch" | "post" | "put" | "trace";
|
|
544
|
+
type Client$1<RequestFn = never, Config = unknown, MethodFn = never, BuildUrlFn = never, SseFn = never> = {
|
|
545
|
+
/**
|
|
546
|
+
* Returns the final request URL.
|
|
547
|
+
*/
|
|
548
|
+
buildUrl: BuildUrlFn;
|
|
549
|
+
getConfig: () => Config;
|
|
550
|
+
request: RequestFn;
|
|
551
|
+
setConfig: (config: Config) => Config;
|
|
552
|
+
} & { [K in HttpMethod]: MethodFn } & ([SseFn] extends [never] ? {
|
|
553
|
+
sse?: never;
|
|
554
|
+
} : {
|
|
555
|
+
sse: { [K in HttpMethod]: SseFn };
|
|
556
|
+
});
|
|
557
|
+
interface Config$1 {
|
|
558
|
+
/**
|
|
559
|
+
* Auth token or a function returning auth token. The resolved value will be
|
|
560
|
+
* added to the request payload as defined by its `security` array.
|
|
561
|
+
*/
|
|
562
|
+
auth?: ((auth: Auth) => Promise<AuthToken> | AuthToken) | AuthToken;
|
|
563
|
+
/**
|
|
564
|
+
* A function for serializing request body parameter. By default,
|
|
565
|
+
* {@link JSON.stringify()} will be used.
|
|
566
|
+
*/
|
|
567
|
+
bodySerializer?: BodySerializer | null;
|
|
568
|
+
/**
|
|
569
|
+
* An object containing any HTTP headers that you want to pre-populate your
|
|
570
|
+
* `Headers` object with.
|
|
571
|
+
*
|
|
572
|
+
* {@link https://developer.mozilla.org/docs/Web/API/Headers/Headers#init See more}
|
|
573
|
+
*/
|
|
574
|
+
headers?: RequestInit["headers"] | Record<string, string | number | boolean | (string | number | boolean)[] | null | undefined | unknown>;
|
|
575
|
+
/**
|
|
576
|
+
* The request method.
|
|
577
|
+
*
|
|
578
|
+
* {@link https://developer.mozilla.org/docs/Web/API/fetch#method See more}
|
|
579
|
+
*/
|
|
580
|
+
method?: Uppercase<HttpMethod>;
|
|
581
|
+
/**
|
|
582
|
+
* A function for serializing request query parameters. By default, arrays
|
|
583
|
+
* will be exploded in form style, objects will be exploded in deepObject
|
|
584
|
+
* style, and reserved characters are percent-encoded.
|
|
585
|
+
*
|
|
586
|
+
* This method will have no effect if the native `paramsSerializer()` Axios
|
|
587
|
+
* API function is used.
|
|
588
|
+
*
|
|
589
|
+
* {@link https://swagger.io/docs/specification/serialization/#query View examples}
|
|
590
|
+
*/
|
|
591
|
+
querySerializer?: QuerySerializer | QuerySerializerOptions;
|
|
592
|
+
/**
|
|
593
|
+
* A function validating request data. This is useful if you want to ensure
|
|
594
|
+
* the request conforms to the desired shape, so it can be safely sent to
|
|
595
|
+
* the server.
|
|
596
|
+
*/
|
|
597
|
+
requestValidator?: (data: unknown) => Promise<unknown>;
|
|
598
|
+
/**
|
|
599
|
+
* A function transforming response data before it's returned. This is useful
|
|
600
|
+
* for post-processing data, e.g., converting ISO strings into Date objects.
|
|
601
|
+
*/
|
|
602
|
+
responseTransformer?: (data: unknown) => Promise<unknown>;
|
|
603
|
+
/**
|
|
604
|
+
* A function validating response data. This is useful if you want to ensure
|
|
605
|
+
* the response conforms to the desired shape, so it can be safely passed to
|
|
606
|
+
* the transformers and returned to the user.
|
|
607
|
+
*/
|
|
608
|
+
responseValidator?: (data: unknown) => Promise<unknown>;
|
|
887
609
|
}
|
|
888
610
|
//#endregion
|
|
611
|
+
//#region ../../api-clients/hey-api-fetch-runtime/src/generated/core/serverSentEvents.gen.d.ts
|
|
612
|
+
type ServerSentEventsOptions<TData = unknown> = Omit<RequestInit, "method"> & Pick<Config$1, "method" | "responseTransformer" | "responseValidator"> & {
|
|
613
|
+
/**
|
|
614
|
+
* Fetch API implementation. You can use this option to provide a custom
|
|
615
|
+
* fetch instance.
|
|
616
|
+
*
|
|
617
|
+
* @default globalThis.fetch
|
|
618
|
+
*/
|
|
619
|
+
fetch?: typeof fetch;
|
|
620
|
+
/**
|
|
621
|
+
* Implementing clients can call request interceptors inside this hook.
|
|
622
|
+
*/
|
|
623
|
+
onRequest?: (url: string, init: RequestInit) => Promise<Request>;
|
|
624
|
+
/**
|
|
625
|
+
* Callback invoked when a network or parsing error occurs during streaming.
|
|
626
|
+
*
|
|
627
|
+
* This option applies only if the endpoint returns a stream of events.
|
|
628
|
+
*
|
|
629
|
+
* @param error The error that occurred.
|
|
630
|
+
*/
|
|
631
|
+
onSseError?: (error: unknown) => void;
|
|
632
|
+
/**
|
|
633
|
+
* Callback invoked when an event is streamed from the server.
|
|
634
|
+
*
|
|
635
|
+
* This option applies only if the endpoint returns a stream of events.
|
|
636
|
+
*
|
|
637
|
+
* @param event Event streamed from the server.
|
|
638
|
+
* @returns Nothing (void).
|
|
639
|
+
*/
|
|
640
|
+
onSseEvent?: (event: StreamEvent<TData>) => void;
|
|
641
|
+
serializedBody?: RequestInit["body"];
|
|
642
|
+
/**
|
|
643
|
+
* Default retry delay in milliseconds.
|
|
644
|
+
*
|
|
645
|
+
* This option applies only if the endpoint returns a stream of events.
|
|
646
|
+
*
|
|
647
|
+
* @default 3000
|
|
648
|
+
*/
|
|
649
|
+
sseDefaultRetryDelay?: number;
|
|
650
|
+
/**
|
|
651
|
+
* Maximum number of retry attempts before giving up.
|
|
652
|
+
*/
|
|
653
|
+
sseMaxRetryAttempts?: number;
|
|
654
|
+
/**
|
|
655
|
+
* Maximum retry delay in milliseconds.
|
|
656
|
+
*
|
|
657
|
+
* Applies only when exponential backoff is used.
|
|
658
|
+
*
|
|
659
|
+
* This option applies only if the endpoint returns a stream of events.
|
|
660
|
+
*
|
|
661
|
+
* @default 30000
|
|
662
|
+
*/
|
|
663
|
+
sseMaxRetryDelay?: number;
|
|
664
|
+
/**
|
|
665
|
+
* Optional sleep function for retry backoff.
|
|
666
|
+
*
|
|
667
|
+
* Defaults to using `setTimeout`.
|
|
668
|
+
*/
|
|
669
|
+
sseSleepFn?: (ms: number) => Promise<void>;
|
|
670
|
+
url: string;
|
|
671
|
+
};
|
|
672
|
+
interface StreamEvent<TData = unknown> {
|
|
673
|
+
data: TData;
|
|
674
|
+
event?: string;
|
|
675
|
+
id?: string;
|
|
676
|
+
retry?: number;
|
|
677
|
+
}
|
|
678
|
+
type ServerSentEventsResult<TData = unknown, TReturn = void, TNext = unknown> = {
|
|
679
|
+
stream: AsyncGenerator<TData extends Record<string, unknown> ? TData[keyof TData] : TData, TReturn, TNext>;
|
|
680
|
+
};
|
|
681
|
+
//#endregion
|
|
682
|
+
//#region ../../api-clients/hey-api-fetch-runtime/src/generated/client/utils.gen.d.ts
|
|
683
|
+
type ErrInterceptor<Err, Res, Req, Options> = (error: Err, response: Res | undefined, request: Req | undefined, options: Options) => Err | Promise<Err>;
|
|
684
|
+
type ReqInterceptor<Req, Options> = (request: Req, options: Options) => Req | Promise<Req>;
|
|
685
|
+
type ResInterceptor<Res, Req, Options> = (response: Res, request: Req, options: Options) => Res | Promise<Res>;
|
|
686
|
+
declare class Interceptors<Interceptor> {
|
|
687
|
+
fns: Array<Interceptor | null>;
|
|
688
|
+
clear(): void;
|
|
689
|
+
eject(id: number | Interceptor): void;
|
|
690
|
+
exists(id: number | Interceptor): boolean;
|
|
691
|
+
getInterceptorIndex(id: number | Interceptor): number;
|
|
692
|
+
update(id: number | Interceptor, fn: Interceptor): number | Interceptor | false;
|
|
693
|
+
use(fn: Interceptor): number;
|
|
694
|
+
}
|
|
695
|
+
interface Middleware<Req, Res, Err, Options> {
|
|
696
|
+
error: Interceptors<ErrInterceptor<Err, Res, Req, Options>>;
|
|
697
|
+
request: Interceptors<ReqInterceptor<Req, Options>>;
|
|
698
|
+
response: Interceptors<ResInterceptor<Res, Req, Options>>;
|
|
699
|
+
}
|
|
700
|
+
//#endregion
|
|
701
|
+
//#region ../../api-clients/hey-api-fetch-runtime/src/generated/client/types.gen.d.ts
|
|
702
|
+
type ResponseStyle = "data" | "fields";
|
|
703
|
+
interface Config<T extends ClientOptions = ClientOptions> extends Omit<RequestInit, "body" | "headers" | "method">, Config$1 {
|
|
704
|
+
/**
|
|
705
|
+
* Base URL for all requests made by this client.
|
|
706
|
+
*/
|
|
707
|
+
baseUrl?: T["baseUrl"];
|
|
708
|
+
/**
|
|
709
|
+
* Fetch API implementation. You can use this option to provide a custom
|
|
710
|
+
* fetch instance.
|
|
711
|
+
*
|
|
712
|
+
* @default globalThis.fetch
|
|
713
|
+
*/
|
|
714
|
+
fetch?: typeof fetch;
|
|
715
|
+
/**
|
|
716
|
+
* Please don't use the Fetch client for Next.js applications. The `next`
|
|
717
|
+
* options won't have any effect.
|
|
718
|
+
*
|
|
719
|
+
* Install {@link https://www.npmjs.com/package/@hey-api/client-next `@hey-api/client-next`} instead.
|
|
720
|
+
*/
|
|
721
|
+
next?: never;
|
|
722
|
+
/**
|
|
723
|
+
* Return the response data parsed in a specified format. By default, `auto`
|
|
724
|
+
* will infer the appropriate method from the `Content-Type` response header.
|
|
725
|
+
* You can override this behavior with any of the {@link Body} methods.
|
|
726
|
+
* Select `stream` if you don't want to parse response data at all.
|
|
727
|
+
*
|
|
728
|
+
* @default 'auto'
|
|
729
|
+
*/
|
|
730
|
+
parseAs?: "arrayBuffer" | "auto" | "blob" | "formData" | "json" | "stream" | "text";
|
|
731
|
+
/**
|
|
732
|
+
* Should we return only data or multiple fields (data, error, response, etc.)?
|
|
733
|
+
*
|
|
734
|
+
* @default 'fields'
|
|
735
|
+
*/
|
|
736
|
+
responseStyle?: ResponseStyle;
|
|
737
|
+
/**
|
|
738
|
+
* Throw an error instead of returning it in the response?
|
|
739
|
+
*
|
|
740
|
+
* @default false
|
|
741
|
+
*/
|
|
742
|
+
throwOnError?: T["throwOnError"];
|
|
743
|
+
}
|
|
744
|
+
interface RequestOptions<TData = unknown, TResponseStyle extends ResponseStyle = "fields", ThrowOnError extends boolean = boolean, Url extends string = string> extends Config<{
|
|
745
|
+
responseStyle: TResponseStyle;
|
|
746
|
+
throwOnError: ThrowOnError;
|
|
747
|
+
}>, Pick<ServerSentEventsOptions<TData>, "onRequest" | "onSseError" | "onSseEvent" | "sseDefaultRetryDelay" | "sseMaxRetryAttempts" | "sseMaxRetryDelay"> {
|
|
748
|
+
/**
|
|
749
|
+
* Any body that you want to add to your request.
|
|
750
|
+
*
|
|
751
|
+
* {@link https://developer.mozilla.org/docs/Web/API/fetch#body}
|
|
752
|
+
*/
|
|
753
|
+
body?: unknown;
|
|
754
|
+
path?: Record<string, unknown>;
|
|
755
|
+
query?: Record<string, unknown>;
|
|
756
|
+
/**
|
|
757
|
+
* Security mechanism(s) to use for the request.
|
|
758
|
+
*/
|
|
759
|
+
security?: ReadonlyArray<Auth>;
|
|
760
|
+
url: Url;
|
|
761
|
+
}
|
|
762
|
+
interface ResolvedRequestOptions<TResponseStyle extends ResponseStyle = "fields", ThrowOnError extends boolean = boolean, Url extends string = string> extends RequestOptions<unknown, TResponseStyle, ThrowOnError, Url> {
|
|
763
|
+
headers: Headers;
|
|
764
|
+
serializedBody?: string;
|
|
765
|
+
}
|
|
766
|
+
type RequestResult<TData = unknown, TError = unknown, ThrowOnError extends boolean = boolean, TResponseStyle extends ResponseStyle = "fields"> = ThrowOnError extends true ? Promise<TResponseStyle extends "data" ? TData extends Record<string, unknown> ? TData[keyof TData] : TData : {
|
|
767
|
+
data: TData extends Record<string, unknown> ? TData[keyof TData] : TData;
|
|
768
|
+
request: Request;
|
|
769
|
+
response: Response;
|
|
770
|
+
}> : Promise<TResponseStyle extends "data" ? (TData extends Record<string, unknown> ? TData[keyof TData] : TData) | undefined : ({
|
|
771
|
+
data: TData extends Record<string, unknown> ? TData[keyof TData] : TData;
|
|
772
|
+
error: undefined;
|
|
773
|
+
} | {
|
|
774
|
+
data: undefined;
|
|
775
|
+
error: TError extends Record<string, unknown> ? TError[keyof TError] : TError;
|
|
776
|
+
}) & {
|
|
777
|
+
/** request may be undefined, because error may be from building the request object itself */request?: Request; /** response may be undefined, because error may be from building the request object itself or from a network error */
|
|
778
|
+
response?: Response;
|
|
779
|
+
}>;
|
|
780
|
+
interface ClientOptions {
|
|
781
|
+
baseUrl?: string;
|
|
782
|
+
responseStyle?: ResponseStyle;
|
|
783
|
+
throwOnError?: boolean;
|
|
784
|
+
}
|
|
785
|
+
type MethodFn = <TData = unknown, TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = "fields">(options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, "method">) => RequestResult<TData, TError, ThrowOnError, TResponseStyle>;
|
|
786
|
+
type SseFn = <TData = unknown, _TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = "fields">(options: Omit<RequestOptions<never, TResponseStyle, ThrowOnError>, "method">) => Promise<ServerSentEventsResult<TData>>;
|
|
787
|
+
type RequestFn = <TData = unknown, TError = unknown, ThrowOnError extends boolean = false, TResponseStyle extends ResponseStyle = "fields">(options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, "method"> & Pick<Required<RequestOptions<TData, TResponseStyle, ThrowOnError>>, "method">) => RequestResult<TData, TError, ThrowOnError, TResponseStyle>;
|
|
788
|
+
type BuildUrlFn = <TData extends {
|
|
789
|
+
body?: unknown;
|
|
790
|
+
path?: Record<string, unknown>;
|
|
791
|
+
query?: Record<string, unknown>;
|
|
792
|
+
url: string;
|
|
793
|
+
}>(options: TData & Options<TData>) => string;
|
|
794
|
+
type Client = Client$1<RequestFn, Config, MethodFn, BuildUrlFn, SseFn> & {
|
|
795
|
+
interceptors: Middleware<Request, Response, unknown, ResolvedRequestOptions>;
|
|
796
|
+
};
|
|
797
|
+
interface TDataShape {
|
|
798
|
+
body?: unknown;
|
|
799
|
+
headers?: unknown;
|
|
800
|
+
path?: unknown;
|
|
801
|
+
query?: unknown;
|
|
802
|
+
url: string;
|
|
803
|
+
}
|
|
804
|
+
type OmitKeys<T, K> = Pick<T, Exclude<keyof T, K>>;
|
|
805
|
+
type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown, TResponseStyle extends ResponseStyle = "fields"> = OmitKeys<RequestOptions<TResponse, TResponseStyle, ThrowOnError>, "body" | "path" | "query" | "url"> & ([TData] extends [never] ? unknown : Omit<TData, "url">);
|
|
806
|
+
//#endregion
|
|
807
|
+
//#region ../../api-clients/fluidos/src/hey-api-client.d.ts
|
|
808
|
+
type FluidOsHeyApiClient = Client;
|
|
809
|
+
//#endregion
|
|
810
|
+
//#region ../../api-clients/fluidos/src/hey-api/types.gen.d.ts
|
|
811
|
+
/**
|
|
812
|
+
* Any valid JSON value for provider, integration, theme, metadata, or other dynamic payloads whose keys are not fixed by the API contract.
|
|
813
|
+
*/
|
|
814
|
+
type JsonValue = string | number | boolean | null | Array<JsonValue> | {
|
|
815
|
+
[key: string]: JsonValue;
|
|
816
|
+
};
|
|
817
|
+
/**
|
|
818
|
+
* FluidOS::NavigationItem
|
|
819
|
+
*/
|
|
820
|
+
type FluidOsNavigationItem = {
|
|
821
|
+
id: number;
|
|
822
|
+
icon?: string | null;
|
|
823
|
+
label?: string | null;
|
|
824
|
+
parent_id?: number | null;
|
|
825
|
+
position?: number | null;
|
|
826
|
+
screen_id?: number | null;
|
|
827
|
+
slug?: string | null;
|
|
828
|
+
source?: "user" | "system" | "code";
|
|
829
|
+
children?: Array<FluidOsNavigationItem>;
|
|
830
|
+
};
|
|
831
|
+
/**
|
|
832
|
+
* FluidOS::Screen
|
|
833
|
+
*/
|
|
834
|
+
type FluidOsScreen = {
|
|
835
|
+
id: number;
|
|
836
|
+
name?: string | null;
|
|
837
|
+
slug?: string | null;
|
|
838
|
+
definition_id: number;
|
|
839
|
+
component_tree?: FluidOsDynamicPayload;
|
|
840
|
+
};
|
|
841
|
+
/**
|
|
842
|
+
* FluidOS::Theme
|
|
843
|
+
*/
|
|
844
|
+
type FluidOsTheme = {
|
|
845
|
+
id: number;
|
|
846
|
+
config?: FluidOsDynamicPayload;
|
|
847
|
+
active?: boolean | null;
|
|
848
|
+
name?: string | null;
|
|
849
|
+
definition_id: number;
|
|
850
|
+
};
|
|
851
|
+
/**
|
|
852
|
+
* FluidOS::Navigation
|
|
853
|
+
*/
|
|
854
|
+
type FluidOsNavigationBasic = {
|
|
855
|
+
id: number;
|
|
856
|
+
name?: string | null;
|
|
857
|
+
definition_id: number;
|
|
858
|
+
platform: "web" | "mobile";
|
|
859
|
+
};
|
|
860
|
+
/**
|
|
861
|
+
* FluidOS::Navigation
|
|
862
|
+
*/
|
|
863
|
+
type FluidOsNavigationWithItems = {
|
|
864
|
+
id: number;
|
|
865
|
+
name?: string | null;
|
|
866
|
+
definition_id: number;
|
|
867
|
+
platform: "web" | "mobile";
|
|
868
|
+
navigation_items?: Array<FluidOsNavigationItem>;
|
|
869
|
+
};
|
|
870
|
+
/**
|
|
871
|
+
* FluidOS::Profile
|
|
872
|
+
*/
|
|
873
|
+
type FluidOsProfile = {
|
|
874
|
+
id: number;
|
|
875
|
+
name?: string | null;
|
|
876
|
+
default?: boolean | null;
|
|
877
|
+
permissions?: FluidOsDynamicPayload;
|
|
878
|
+
definition_id: number;
|
|
879
|
+
navigation?: FluidOsNavigationWithItems | null;
|
|
880
|
+
mobile_navigation?: FluidOsNavigationWithItems;
|
|
881
|
+
themes?: Array<FluidOsTheme>;
|
|
882
|
+
};
|
|
883
|
+
/**
|
|
884
|
+
* Dynamic Fluid OS JSON payload whose keys are defined by the app builder configuration.
|
|
885
|
+
*/
|
|
886
|
+
type FluidOsDynamicPayload = {
|
|
887
|
+
[key: string]: JsonValue;
|
|
888
|
+
} | null;
|
|
889
|
+
//#endregion
|
|
889
890
|
//#region src/utils/mappings.d.ts
|
|
890
891
|
/** Definition metadata stored at the top level of the mappings file. */
|
|
891
892
|
interface DefinitionMapping {
|
|
@@ -1047,6 +1048,7 @@ declare function categorizeChanges(diff: SnapshotDiff): CategorizedChanges;
|
|
|
1047
1048
|
*
|
|
1048
1049
|
* Checks:
|
|
1049
1050
|
* - New and changed resources contain the required local-file fields
|
|
1051
|
+
* - Every widget node in a changed screen has a string "id" and "type"
|
|
1050
1052
|
* - New and changed themes include the required config object
|
|
1051
1053
|
* - Navigation items' "screen" slugs reference existing screen files or mappings
|
|
1052
1054
|
* - Profile "navigation" and "mobile_navigation" slugs reference existing nav files or mappings
|
|
@@ -1066,6 +1068,205 @@ declare const topLevelWidgetCommand: Command;
|
|
|
1066
1068
|
//#region src/commands/deploy.d.ts
|
|
1067
1069
|
declare const deployCommand: Command;
|
|
1068
1070
|
//#endregion
|
|
1071
|
+
//#region ../widget-tooling/src/internal/widget-package-validation.d.ts
|
|
1072
|
+
type WidgetPackageOwnerKind = "company" | "droplet";
|
|
1073
|
+
//#endregion
|
|
1074
|
+
//#region ../widget-tooling/src/internal/widget-package-builder.d.ts
|
|
1075
|
+
interface SharedWidgetPackageBuildResult {
|
|
1076
|
+
readonly publishDir: string;
|
|
1077
|
+
readonly packageId: string;
|
|
1078
|
+
readonly version: string;
|
|
1079
|
+
readonly manifestPath: string;
|
|
1080
|
+
readonly publishManifestPath: string;
|
|
1081
|
+
readonly widgetScriptPath: string;
|
|
1082
|
+
}
|
|
1083
|
+
//#endregion
|
|
1084
|
+
//#region ../widget-tooling/src/internal/widget-package-artifacts.d.ts
|
|
1085
|
+
interface ArtifactMetadata {
|
|
1086
|
+
readonly path: string;
|
|
1087
|
+
readonly sha256: string;
|
|
1088
|
+
readonly bytes: number;
|
|
1089
|
+
readonly contentType: string;
|
|
1090
|
+
}
|
|
1091
|
+
//#endregion
|
|
1092
|
+
//#region ../widget-tooling/src/internal/widget-package-upload.d.ts
|
|
1093
|
+
type WidgetPackageUploadOwner = {
|
|
1094
|
+
readonly kind: "droplet";
|
|
1095
|
+
readonly uuid: string;
|
|
1096
|
+
} | {
|
|
1097
|
+
readonly kind: "company";
|
|
1098
|
+
};
|
|
1099
|
+
type WidgetPackageArtifactMetadata = ArtifactMetadata;
|
|
1100
|
+
interface WidgetPackageUploadArtifact extends WidgetPackageArtifactMetadata {
|
|
1101
|
+
readonly body: BodyInit;
|
|
1102
|
+
}
|
|
1103
|
+
interface WidgetPackageSessionRequest {
|
|
1104
|
+
readonly version: string;
|
|
1105
|
+
readonly packageKey: string;
|
|
1106
|
+
readonly builderVersion: string;
|
|
1107
|
+
readonly cliVersion: string;
|
|
1108
|
+
readonly runtimeVersion: string;
|
|
1109
|
+
readonly manifestHash: string;
|
|
1110
|
+
readonly manifest: Record<string, unknown>;
|
|
1111
|
+
readonly artifacts: readonly WidgetPackageArtifactMetadata[];
|
|
1112
|
+
}
|
|
1113
|
+
interface WidgetPackagePublishRequest extends Omit<WidgetPackageSessionRequest, "artifacts"> {
|
|
1114
|
+
readonly artifacts: readonly WidgetPackageUploadArtifact[];
|
|
1115
|
+
}
|
|
1116
|
+
type WidgetPackageArtifactPayload = ArtifactMetadata;
|
|
1117
|
+
interface WidgetPackageUploadSessionPayload {
|
|
1118
|
+
readonly version: string;
|
|
1119
|
+
readonly package_key: string;
|
|
1120
|
+
readonly builder_version: string;
|
|
1121
|
+
readonly cli_version: string;
|
|
1122
|
+
readonly runtime_version: string;
|
|
1123
|
+
readonly manifest_hash: string;
|
|
1124
|
+
readonly manifest: Record<string, unknown>;
|
|
1125
|
+
readonly artifacts: readonly WidgetPackageArtifactPayload[];
|
|
1126
|
+
}
|
|
1127
|
+
interface WidgetPackageSignedUpload {
|
|
1128
|
+
readonly path: string;
|
|
1129
|
+
readonly url: string;
|
|
1130
|
+
readonly contentType: string;
|
|
1131
|
+
readonly headers: Readonly<Record<string, string>>;
|
|
1132
|
+
}
|
|
1133
|
+
interface WidgetPackageUploadSession {
|
|
1134
|
+
readonly version: string;
|
|
1135
|
+
readonly uploads: readonly WidgetPackageSignedUpload[];
|
|
1136
|
+
readonly raw: unknown;
|
|
1137
|
+
}
|
|
1138
|
+
interface WidgetPackageArtifactUploadResult {
|
|
1139
|
+
readonly path: string;
|
|
1140
|
+
readonly status: number;
|
|
1141
|
+
readonly contentType: string;
|
|
1142
|
+
}
|
|
1143
|
+
interface WidgetPackageCompleteResult {
|
|
1144
|
+
readonly version: string;
|
|
1145
|
+
readonly status?: string;
|
|
1146
|
+
readonly packageKey?: string;
|
|
1147
|
+
readonly raw: unknown;
|
|
1148
|
+
}
|
|
1149
|
+
interface WidgetPackagePublishResult {
|
|
1150
|
+
readonly dryRun: boolean;
|
|
1151
|
+
readonly sessionPayload: WidgetPackageUploadSessionPayload;
|
|
1152
|
+
readonly session?: WidgetPackageUploadSession;
|
|
1153
|
+
readonly uploadedArtifacts?: readonly WidgetPackageArtifactUploadResult[];
|
|
1154
|
+
readonly complete?: WidgetPackageCompleteResult;
|
|
1155
|
+
}
|
|
1156
|
+
//#endregion
|
|
1157
|
+
//#region ../widget-tooling/src/workflows.d.ts
|
|
1158
|
+
type WidgetPackageOwner = WidgetPackageUploadOwner;
|
|
1159
|
+
type WidgetPackageBuildResult = SharedWidgetPackageBuildResult;
|
|
1160
|
+
interface PublishedWidgetPackage {
|
|
1161
|
+
readonly build: WidgetPackageBuildResult;
|
|
1162
|
+
readonly request: WidgetPackagePublishRequest;
|
|
1163
|
+
readonly publish: WidgetPackagePublishResult;
|
|
1164
|
+
}
|
|
1165
|
+
//#endregion
|
|
1166
|
+
//#region ../widget-tooling/src/company-widget-package.d.ts
|
|
1167
|
+
interface CompanyWidgetPackage {
|
|
1168
|
+
/** Bare key, comparable to `packageStableId` (no `company.` prefix). */
|
|
1169
|
+
readonly key: string;
|
|
1170
|
+
readonly version: string;
|
|
1171
|
+
/**
|
|
1172
|
+
* Fully-qualified widget types this package publishes — `company.<key>.<Name>`,
|
|
1173
|
+
* the same strings screen JSON stores. Empty when the response carried no
|
|
1174
|
+
* usable manifest, which is a "cannot tell", not "publishes nothing".
|
|
1175
|
+
*/
|
|
1176
|
+
readonly widgetTypes: readonly string[];
|
|
1177
|
+
}
|
|
1178
|
+
/**
|
|
1179
|
+
* The company's widget package, or `null` when it has never published.
|
|
1180
|
+
*
|
|
1181
|
+
* A company is expected to have exactly one. This returns the first, and exists
|
|
1182
|
+
* for callers that only need "what is this company's key" — a preflight must use
|
|
1183
|
+
* {@link readCompanyWidgetPackages} and reconcile against the configured key
|
|
1184
|
+
* instead, or a second package would make it report a confident, wrong answer.
|
|
1185
|
+
*/
|
|
1186
|
+
declare function readCompanyWidgetPackage(client: FluidOsHeyApiClient): Promise<CompanyWidgetPackage | null>;
|
|
1187
|
+
/**
|
|
1188
|
+
* The message shown when the project's key disagrees with the company's.
|
|
1189
|
+
*
|
|
1190
|
+
* Names the actual key and the exact edit, because the failure it replaces gave
|
|
1191
|
+
* neither — and because the fix is one line the author can apply immediately.
|
|
1192
|
+
*/
|
|
1193
|
+
declare function formatPackageKeyMismatch(options: {
|
|
1194
|
+
readonly configuredKey: string;
|
|
1195
|
+
readonly companyKey: string;
|
|
1196
|
+
readonly companyVersion: string;
|
|
1197
|
+
}): string;
|
|
1198
|
+
/** What the project's own `src/widgets.config.ts` declares. */
|
|
1199
|
+
interface ConfiguredWidgetPackage {
|
|
1200
|
+
readonly packageId: string;
|
|
1201
|
+
readonly version: string;
|
|
1202
|
+
}
|
|
1203
|
+
interface CompanyPackagePreflight {
|
|
1204
|
+
/** Set when the deploy must not proceed; the text explains the one-line fix. */
|
|
1205
|
+
readonly mismatch?: string;
|
|
1206
|
+
/** Set when the configured version would collide; publish as this instead. */
|
|
1207
|
+
readonly versionOverride?: string;
|
|
1208
|
+
/** The version that would have collided, for reporting the substitution. */
|
|
1209
|
+
readonly configuredVersion?: string;
|
|
1210
|
+
}
|
|
1211
|
+
/**
|
|
1212
|
+
* One round trip against the company's widget package, answering both questions
|
|
1213
|
+
* a publish has to settle before it builds anything: is this the right package,
|
|
1214
|
+
* and is this version free?
|
|
1215
|
+
*
|
|
1216
|
+
* Shared so `fluid portal deploy` and any host that drives it reach the same
|
|
1217
|
+
* verdict for the same reason.
|
|
1218
|
+
*
|
|
1219
|
+
* Proceeds on every uncertainty — the company has never published (its first
|
|
1220
|
+
* publish defines both key and version), the lookup failed, or the local config
|
|
1221
|
+
* could not be read. A preflight exists to replace a confusing failure with a
|
|
1222
|
+
* clear one, not to invent new reasons to stop; when it cannot tell, the server
|
|
1223
|
+
* still decides.
|
|
1224
|
+
*/
|
|
1225
|
+
declare function preflightCompanyPackage(options: {
|
|
1226
|
+
readonly projectDir: string;
|
|
1227
|
+
readonly client: FluidOsHeyApiClient; /** Injected so callers bundle their own loader; avoids a cycle back into the build path. */
|
|
1228
|
+
readonly readConfiguredPackage: (projectDir: string) => Promise<ConfiguredWidgetPackage | null>;
|
|
1229
|
+
}): Promise<CompanyPackagePreflight>;
|
|
1230
|
+
/**
|
|
1231
|
+
* Returns the version to publish as, or `null` to publish the configured one.
|
|
1232
|
+
*
|
|
1233
|
+
* A company has ONE widget package and several projects publish into it, so the
|
|
1234
|
+
* version belongs to that shared package rather than to any project's source
|
|
1235
|
+
* file. Nothing tells a project what the others have already released, so two
|
|
1236
|
+
* of them declaring `0.5.0` is inevitable — and republishing a version that
|
|
1237
|
+
* exists is refused with `422 Package version already exists`, whose only fix
|
|
1238
|
+
* is editing a SemVer string in a TypeScript file. For an author who never
|
|
1239
|
+
* opens a terminal that is the end of the road, and it happens on EVERY publish
|
|
1240
|
+
* after the first, not in some corner case.
|
|
1241
|
+
*
|
|
1242
|
+
* So a configured version at or below what is published becomes the next patch
|
|
1243
|
+
* after the published one. A configured version ABOVE it is honoured exactly —
|
|
1244
|
+
* that is a deliberate minor or major bump and the whole reason to keep the
|
|
1245
|
+
* field.
|
|
1246
|
+
*
|
|
1247
|
+
* Returns `null` on any version this cannot reason about — a prerelease, build
|
|
1248
|
+
* metadata, anything not a plain numeric triple. Guessing a successor for those
|
|
1249
|
+
* would be worse than letting the server answer.
|
|
1250
|
+
*/
|
|
1251
|
+
declare function resolvePublishVersion(options: {
|
|
1252
|
+
readonly configuredVersion: string;
|
|
1253
|
+
readonly publishedVersion: string;
|
|
1254
|
+
}): string | null;
|
|
1255
|
+
//#endregion
|
|
1256
|
+
//#region src/commands/widget-package-publish.d.ts
|
|
1257
|
+
interface PublishWidgetRuntimeArtifactsOptions {
|
|
1258
|
+
readonly projectDir: string;
|
|
1259
|
+
readonly outDir: string;
|
|
1260
|
+
readonly buildOwner: WidgetPackageOwnerKind;
|
|
1261
|
+
readonly uploadOwner: WidgetPackageOwner;
|
|
1262
|
+
readonly dryRun?: boolean;
|
|
1263
|
+
readonly client?: FluidOsHeyApiClient;
|
|
1264
|
+
/** Publish as this version rather than the config's. */
|
|
1265
|
+
readonly version?: string;
|
|
1266
|
+
}
|
|
1267
|
+
type PublishWidgetRuntimeArtifactsResult = PublishedWidgetPackage;
|
|
1268
|
+
declare function publishWidgetRuntimeArtifacts(options: PublishWidgetRuntimeArtifactsOptions): Promise<PublishWidgetRuntimeArtifactsResult>;
|
|
1269
|
+
//#endregion
|
|
1069
1270
|
//#region src/commands/version.d.ts
|
|
1070
1271
|
declare const versionCommand: Command;
|
|
1071
1272
|
//#endregion
|
|
@@ -1073,11 +1274,11 @@ declare const versionCommand: Command;
|
|
|
1073
1274
|
declare const doctorCommand: Command;
|
|
1074
1275
|
//#endregion
|
|
1075
1276
|
//#region src/utils/transform.d.ts
|
|
1076
|
-
type ApiScreen =
|
|
1077
|
-
type ApiTheme =
|
|
1078
|
-
type ApiNavigationBasic =
|
|
1079
|
-
type ApiNavigationItem =
|
|
1080
|
-
type ApiProfile =
|
|
1277
|
+
type ApiScreen = FluidOsScreen;
|
|
1278
|
+
type ApiTheme = FluidOsTheme;
|
|
1279
|
+
type ApiNavigationBasic = FluidOsNavigationBasic;
|
|
1280
|
+
type ApiNavigationItem = FluidOsNavigationItem;
|
|
1281
|
+
type ApiProfile = FluidOsProfile;
|
|
1081
1282
|
interface LocalScreen {
|
|
1082
1283
|
readonly name: string;
|
|
1083
1284
|
readonly component_tree: Record<string, unknown>[];
|
|
@@ -1162,5 +1363,5 @@ declare function transformProfile(profile: ApiProfile, navIdToSlug: Map<number,
|
|
|
1162
1363
|
//#region src/index.d.ts
|
|
1163
1364
|
declare const plugin: FluidPlugin;
|
|
1164
1365
|
//#endregion
|
|
1165
|
-
export { type BuildOptions, CANONICAL_PROJECT_NAME, type CategorizedChanges, type CreateOptions, type CreatePortalGitCredentialOptions, type CreatePortalProjectDependencies, type DefinitionMapping, type DevOptions, FILE_SYSTEM_ERRORS, type FileHash, type FileHashMap, type FileSystemError, type FileSystemErrorCode, type GitCredentialOutcome, GitError, type LocalNavigation, type LocalNavigationItem, type LocalProfile, type LocalScreen, type LocalTheme, type MappedResourceType, type PortalDeployOptions, type PortalGitCredential, type PortalGitSyncOptions, type PortalGitSyncResult, type PortalMappings, type ProjectConfig, type ScaffoldFromGitHubOptions, type SelectedPageTemplate, type Snapshot, type SnapshotDiff, TEMPLATES, TEMPLATE_REPO_URL, type TemplateName, type TemplatePaths, type TemplateVariables, type ValidationError, type WidgetCreateOptions, type WidgetPublishOptions, buildIdToSlugMap, buildNavigationIdToSlugMap, buildSnapshot, buildThemeIdToSlugMap, categorizeChanges, cloneCommand, computeFileHash, copyTemplate, copyTemplateSafe, createCommand, createDirectory, createDirectorySafe, createPortalGitCredential, createPortalProject, plugin as default, deployCommand, deriveScreenSlug, deriveSlug, diffAgainstSnapshot, directoryExists, doctorCommand, ensureGitAvailable, fileExists, getInstallCommand, getOriginUrl, getRunCommand, getSdkVersion, getSdkVersionSafe, getTemplatePaths, gitAheadBehindVsFetchHead, gitAutoCommit, gitClone, gitFetch, gitInit, gitMergeFastForward, gitMissingError, gitPush, hasUncommittedChanges, installDependencies, isGitAvailable, isGitRepo, pathExists, portalGitCredentialPath, promptProjectConfig, pullCommand, pushCommand, readFileSafe, readMappings, readSnapshot, removeMapping, resolveIdToSlug, resolveSlugToId, rewriteProjectName, runPackageManager, runPortalGitSync, scaffoldFromGitHub, slugFromPath, topLevelWidgetCommand, transformNavigation, transformNavigationItems, transformProfile, transformScreen, transformTheme, updateMapping, validateCrossReferences, versionCommand, widgetCommand, writeFileSafe, writeFluidrcProfile, writeMappings, writeSnapshot };
|
|
1366
|
+
export { type BuildOptions, CANONICAL_PROJECT_NAME, type CategorizedChanges, type CompanyPackagePreflight, type CompanyWidgetPackage, type ConfiguredWidgetPackage, type CreateOptions, type CreatePortalGitCredentialOptions, type CreatePortalProjectDependencies, type DefinitionMapping, type DevOptions, FILE_SYSTEM_ERRORS, type FileHash, type FileHashMap, type FileSystemError, type FileSystemErrorCode, type GitCredentialOutcome, GitError, type LocalNavigation, type LocalNavigationItem, type LocalProfile, type LocalScreen, type LocalTheme, type MappedResourceType, type PortalDeployOptions, type PortalGitCredential, type PortalGitSyncOptions, type PortalGitSyncResult, type PortalMappings, type ProjectConfig, type PublishWidgetRuntimeArtifactsOptions, type ScaffoldFromGitHubOptions, type SelectedPageTemplate, type Snapshot, type SnapshotDiff, TEMPLATES, TEMPLATE_REPO_URL, type TemplateName, type TemplatePaths, type TemplateVariables, type ValidationError, type WidgetCreateOptions, type WidgetPublishOptions, buildIdToSlugMap, buildNavigationIdToSlugMap, buildSnapshot, buildThemeIdToSlugMap, categorizeChanges, cloneCommand, computeFileHash, copyTemplate, copyTemplateSafe, createCommand, createDirectory, createDirectorySafe, createPortalGitCredential, createPortalProject, plugin as default, deployCommand, deriveScreenSlug, deriveSlug, diffAgainstSnapshot, directoryExists, doctorCommand, ensureGitAvailable, fileExists, formatPackageKeyMismatch, getInstallCommand, getOriginUrl, getRunCommand, getSdkVersion, getSdkVersionSafe, getTemplatePaths, gitAheadBehindVsFetchHead, gitAutoCommit, gitClone, gitFetch, gitInit, gitMergeFastForward, gitMissingError, gitPush, hasUncommittedChanges, installDependencies, isGitAvailable, isGitRepo, pathExists, portalGitCredentialPath, preflightCompanyPackage, promptProjectConfig, publishWidgetRuntimeArtifacts, pullCommand, pushCommand, readCompanyWidgetPackage, readFileSafe, readMappings, readSnapshot, removeMapping, resolveIdToSlug, resolvePublishVersion, resolveSlugToId, rewriteProjectName, runPackageManager, runPortalGitSync, scaffoldFromGitHub, slugFromPath, topLevelWidgetCommand, transformNavigation, transformNavigationItems, transformProfile, transformScreen, transformTheme, updateMapping, validateCrossReferences, versionCommand, widgetCommand, writeFileSafe, writeFluidrcProfile, writeMappings, writeSnapshot };
|
|
1166
1367
|
//# sourceMappingURL=index.d.mts.map
|