@rippling/rippling-sdk 0.2.0-alpha.78 → 0.2.0-alpha.80
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/client.d.mts +2 -2
- package/client.d.mts.map +1 -1
- package/client.d.ts +2 -2
- package/client.d.ts.map +1 -1
- package/client.js.map +1 -1
- package/client.mjs.map +1 -1
- package/examples/manifest/custom-skill/custom-skill.ts +45 -0
- package/lib/manifest/agent.d.mts +60 -0
- package/lib/manifest/agent.d.mts.map +1 -0
- package/lib/manifest/agent.d.ts +60 -0
- package/lib/manifest/agent.d.ts.map +1 -0
- package/lib/manifest/agent.js +94 -0
- package/lib/manifest/agent.js.map +1 -0
- package/lib/manifest/agent.mjs +90 -0
- package/lib/manifest/agent.mjs.map +1 -0
- package/lib/manifest/custom-field.d.mts +56 -15
- package/lib/manifest/custom-field.d.mts.map +1 -1
- package/lib/manifest/custom-field.d.ts +56 -15
- package/lib/manifest/custom-field.d.ts.map +1 -1
- package/lib/manifest/custom-field.js +27 -0
- package/lib/manifest/custom-field.js.map +1 -1
- package/lib/manifest/custom-field.mjs +27 -0
- package/lib/manifest/custom-field.mjs.map +1 -1
- package/lib/manifest/custom-skill.d.mts +115 -0
- package/lib/manifest/custom-skill.d.mts.map +1 -0
- package/lib/manifest/custom-skill.d.ts +115 -0
- package/lib/manifest/custom-skill.d.ts.map +1 -0
- package/lib/manifest/custom-skill.js +127 -0
- package/lib/manifest/custom-skill.js.map +1 -0
- package/lib/manifest/custom-skill.mjs +123 -0
- package/lib/manifest/custom-skill.mjs.map +1 -0
- package/lib/manifest/existing-manifest-context.d.mts +7 -0
- package/lib/manifest/existing-manifest-context.d.mts.map +1 -1
- package/lib/manifest/existing-manifest-context.d.ts +7 -0
- package/lib/manifest/existing-manifest-context.d.ts.map +1 -1
- package/lib/manifest/existing-manifest-context.js +34 -0
- package/lib/manifest/existing-manifest-context.js.map +1 -1
- package/lib/manifest/existing-manifest-context.mjs +34 -0
- package/lib/manifest/existing-manifest-context.mjs.map +1 -1
- package/lib/manifest/index.d.mts +3 -1
- package/lib/manifest/index.d.mts.map +1 -1
- package/lib/manifest/index.d.ts +3 -1
- package/lib/manifest/index.d.ts.map +1 -1
- package/lib/manifest/index.js +5 -1
- package/lib/manifest/index.js.map +1 -1
- package/lib/manifest/index.mjs +2 -0
- package/lib/manifest/index.mjs.map +1 -1
- package/lib/manifest/manifest-builder.d.mts +1 -1
- package/lib/manifest/manifest-builder.d.mts.map +1 -1
- package/lib/manifest/manifest-builder.d.ts +1 -1
- package/lib/manifest/manifest-builder.d.ts.map +1 -1
- package/lib/manifest/manifest-builder.js.map +1 -1
- package/lib/manifest/manifest-builder.mjs.map +1 -1
- package/package.json +1 -1
- package/resources/index.d.mts +1 -1
- package/resources/index.d.mts.map +1 -1
- package/resources/index.d.ts +1 -1
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/leave-program-evaluations.d.mts +32 -2
- package/resources/leave-program-evaluations.d.mts.map +1 -1
- package/resources/leave-program-evaluations.d.ts +32 -2
- package/resources/leave-program-evaluations.d.ts.map +1 -1
- package/resources/teams.d.mts +33 -1
- package/resources/teams.d.mts.map +1 -1
- package/resources/teams.d.ts +33 -1
- package/resources/teams.d.ts.map +1 -1
- package/resources/teams.js +22 -0
- package/resources/teams.js.map +1 -1
- package/resources/teams.mjs +22 -0
- package/resources/teams.mjs.map +1 -1
- package/src/client.ts +4 -0
- package/src/lib/manifest/agent.ts +141 -0
- package/src/lib/manifest/custom-field.ts +140 -26
- package/src/lib/manifest/custom-skill.ts +205 -0
- package/src/lib/manifest/existing-manifest-context.ts +61 -0
- package/src/lib/manifest/index.ts +18 -0
- package/src/lib/manifest/manifest-builder.ts +2 -0
- package/src/resources/index.ts +2 -0
- package/src/resources/leave-program-evaluations.ts +38 -2
- package/src/resources/teams.ts +55 -0
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -36,40 +36,81 @@ export type CustomFieldDefaultValue = {
|
|
|
36
36
|
value?: never;
|
|
37
37
|
rqlDefinitionFormula: string;
|
|
38
38
|
};
|
|
39
|
-
|
|
39
|
+
/** Properties shared by formula and user-input custom fields. */
|
|
40
|
+
export interface CustomFieldBaseProps<ModelRqlName extends string = string> {
|
|
40
41
|
fieldId?: string;
|
|
41
42
|
name: string;
|
|
42
43
|
section: CustomFieldSection;
|
|
43
|
-
modelRqlName:
|
|
44
|
+
modelRqlName: ModelRqlName;
|
|
44
45
|
dataType: CustomFieldDataType;
|
|
45
46
|
apiName: CustomFieldApiName;
|
|
47
|
+
description?: string | null;
|
|
48
|
+
displayOrder?: number | null;
|
|
49
|
+
}
|
|
50
|
+
type NonSensitiveCustomFieldPermissionClassification = Exclude<CustomFieldPermissionClassification, 'SENSITIVE_PERSONAL_INFO' | 'SENSITIVE_EMPLOYMENT_INFO'>;
|
|
51
|
+
/** Permission properties required for every Employee custom field. */
|
|
52
|
+
export type EmployeeCustomFieldPermissionProps = {
|
|
53
|
+
applicableGroup: string;
|
|
54
|
+
} & ({
|
|
55
|
+
fieldReadAccess: 'ALL_ACCESS';
|
|
56
|
+
fieldPermissionClassification: NonSensitiveCustomFieldPermissionClassification;
|
|
57
|
+
} | {
|
|
58
|
+
fieldReadAccess: 'ADMIN_ACCESS' | 'ADMIN_AND_EMPLOYEE_ACCESS';
|
|
59
|
+
fieldPermissionClassification: CustomFieldPermissionClassification;
|
|
60
|
+
});
|
|
61
|
+
/** Optional permission properties used by non-Employee custom fields. */
|
|
62
|
+
export interface NonEmployeeCustomFieldPermissionProps {
|
|
46
63
|
fieldPermissionClassification?: CustomFieldPermissionClassification | null;
|
|
47
64
|
fieldReadAccess?: CustomFieldReadAccess | null;
|
|
48
|
-
fieldWriteAccess?: CustomFieldWriteAccess | null;
|
|
49
65
|
applicableGroup?: string | null;
|
|
50
|
-
description?: string | null;
|
|
51
|
-
displayOrder?: number | null;
|
|
52
66
|
}
|
|
53
|
-
export type
|
|
67
|
+
export type CustomFieldPermissionProps<ModelRqlName extends string = string> = ModelRqlName extends 'Employee' ? EmployeeCustomFieldPermissionProps : NonEmployeeCustomFieldPermissionProps;
|
|
68
|
+
interface CustomFieldUserInputOptions {
|
|
69
|
+
rqlDefinitionFormula?: null;
|
|
70
|
+
required?: boolean | null;
|
|
71
|
+
tip?: string | null;
|
|
72
|
+
defaultValue?: CustomFieldDefaultValue | null;
|
|
73
|
+
}
|
|
74
|
+
type EmployeeCustomFieldUserInputAccess = {
|
|
75
|
+
collectDuring: 'ONBOARDING';
|
|
76
|
+
fieldReadAccess: 'ALL_ACCESS' | 'ADMIN_AND_EMPLOYEE_ACCESS';
|
|
77
|
+
fieldWriteAccess: 'EMPLOYEE_ACCESS' | 'ADMIN_AND_EMPLOYEE_ACCESS' | 'NO_ACCESS';
|
|
78
|
+
} | {
|
|
79
|
+
collectDuring?: 'NONE' | 'HIRING' | 'TERMINATING' | null;
|
|
80
|
+
fieldWriteAccess: CustomFieldWriteAccess;
|
|
81
|
+
};
|
|
82
|
+
interface NonEmployeeCustomFieldUserInputAccess {
|
|
83
|
+
collectDuring?: CustomFieldCollectionTiming | null;
|
|
84
|
+
fieldWriteAccess?: CustomFieldWriteAccess | null;
|
|
85
|
+
}
|
|
86
|
+
type CustomFieldUserInputAccess<ModelRqlName extends string> = ModelRqlName extends 'Employee' ? EmployeeCustomFieldUserInputAccess : NonEmployeeCustomFieldUserInputAccess;
|
|
87
|
+
interface CustomFieldFormulaOptions {
|
|
54
88
|
rqlDefinitionFormula: string;
|
|
89
|
+
fieldWriteAccess: 'NO_ACCESS';
|
|
55
90
|
collectDuring?: null;
|
|
56
91
|
required?: null;
|
|
57
92
|
tip?: null;
|
|
58
93
|
defaultValue?: null;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
94
|
+
}
|
|
95
|
+
/** A calculated custom field whose value cannot be edited directly. */
|
|
96
|
+
export type FormulaCustomFieldProps<ModelRqlName extends string = string> = CustomFieldBaseProps<ModelRqlName> & CustomFieldPermissionProps<ModelRqlName> & CustomFieldFormulaOptions;
|
|
97
|
+
/** A custom field whose value is supplied by a user or a default value. */
|
|
98
|
+
export type UserInputCustomFieldProps<ModelRqlName extends string = string> = CustomFieldBaseProps<ModelRqlName> & CustomFieldPermissionProps<ModelRqlName> & CustomFieldUserInputOptions & CustomFieldUserInputAccess<ModelRqlName>;
|
|
99
|
+
/** A formula or user-input custom field on the given model. */
|
|
100
|
+
export type CustomFieldProps<ModelRqlName extends string = string> = FormulaCustomFieldProps<ModelRqlName> | UserInputCustomFieldProps<ModelRqlName>;
|
|
101
|
+
/** A calculated Employee custom field. */
|
|
102
|
+
export type EmployeeFormulaCustomFieldProps = FormulaCustomFieldProps<'Employee'>;
|
|
103
|
+
/** An Employee custom field whose value is supplied by a user or a default value. */
|
|
104
|
+
export type EmployeeUserInputCustomFieldProps = UserInputCustomFieldProps<'Employee'>;
|
|
105
|
+
/** Any supported Employee custom field. */
|
|
106
|
+
export type EmployeeCustomFieldProps = EmployeeFormulaCustomFieldProps | EmployeeUserInputCustomFieldProps;
|
|
66
107
|
/** A Custom Field V2 field on a native or custom object. */
|
|
67
|
-
export declare class CustomField {
|
|
108
|
+
export declare class CustomField<const ModelRqlName extends string = string> {
|
|
68
109
|
static readonly componentType: "CUSTOM_FIELD_V2";
|
|
69
110
|
static toDeletionIdentifier(customFieldId: string): ManifestComponentDeletion;
|
|
70
111
|
private readonly _fieldId;
|
|
71
112
|
private readonly props;
|
|
72
|
-
constructor(scope: ManifestScope, props: CustomFieldProps);
|
|
113
|
+
constructor(scope: ManifestScope, props: CustomFieldProps<ModelRqlName>);
|
|
73
114
|
static loadFromExisting(fieldIdOrApiName: string, options?: ExistingManifestContextOptions): CustomField;
|
|
74
115
|
/** @internal Hydrates a custom field from existing manifest wire JSON. */
|
|
75
116
|
static _fromExistingComponent(scope: ManifestScope, component: Record<string, any>, section: CustomFieldSection): CustomField;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-field.d.ts","sourceRoot":"","sources":["../../src/lib/manifest/custom-field.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,kCAA+B;AAC5D,OAAO,EAA8B,KAAK,8BAA8B,EAAE,uCAAoC;AAC9G,OAAO,KAAK,EAAE,yBAAyB,EAAE,aAAa,EAAE,8BAA2B;AAGnF,eAAO,MAAM,kBAAkB,iMAkBrB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAClE,MAAM,MAAM,kBAAkB,GAAG,GAAG,MAAM,QAAQ,CAAC;AAEnD,MAAM,MAAM,gCAAgC,GAAG,aAAa,GAAG,WAAW,GAAG,kBAAkB,CAAC;AAEhG,KAAK,qBAAqB,GAAG,OAAO,CAClC,eAAe,EACf,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,GAAG,oBAAoB,CACzE,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B;IAAE,SAAS,EAAE,qBAAqB,CAAA;CAAE,GACpC;IAAE,SAAS,EAAE,QAAQ,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACtD;IAAE,SAAS,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACnD;IAAE,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAC7D;IACE,SAAS,EAAE,IAAI,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,aAAa,CAAC,EAAE,gCAAgC,GAAG,IAAI,CAAC;CACzD,GACD;IAAE,SAAS,EAAE,oBAAoB,CAAC;IAAC,sBAAsB,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE,MAAM,MAAM,mCAAmC,GAC3C,qBAAqB,GACrB,eAAe,GACf,yBAAyB,GACzB,uBAAuB,GACvB,iBAAiB,GACjB,2BAA2B,CAAC;AAEhC,MAAM,MAAM,qBAAqB,GAAG,YAAY,GAAG,cAAc,GAAG,2BAA2B,CAAC;AAEhG,MAAM,MAAM,sBAAsB,GAC9B,iBAAiB,GACjB,cAAc,GACd,2BAA2B,GAC3B,WAAW,CAAC;AAEhB,MAAM,MAAM,2BAA2B,GAAG,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,aAAa,CAAC;AAE3F,MAAM,MAAM,uBAAuB,GAC/B;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,oBAAoB,CAAC,EAAE,KAAK,CAAA;CAAE,GAC/C;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpD,
|
|
1
|
+
{"version":3,"file":"custom-field.d.ts","sourceRoot":"","sources":["../../src/lib/manifest/custom-field.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,kCAA+B;AAC5D,OAAO,EAA8B,KAAK,8BAA8B,EAAE,uCAAoC;AAC9G,OAAO,KAAK,EAAE,yBAAyB,EAAE,aAAa,EAAE,8BAA2B;AAGnF,eAAO,MAAM,kBAAkB,iMAkBrB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAClE,MAAM,MAAM,kBAAkB,GAAG,GAAG,MAAM,QAAQ,CAAC;AAEnD,MAAM,MAAM,gCAAgC,GAAG,aAAa,GAAG,WAAW,GAAG,kBAAkB,CAAC;AAEhG,KAAK,qBAAqB,GAAG,OAAO,CAClC,eAAe,EACf,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,IAAI,GAAG,oBAAoB,CACzE,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC3B;IAAE,SAAS,EAAE,qBAAqB,CAAA;CAAE,GACpC;IAAE,SAAS,EAAE,QAAQ,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACtD;IAAE,SAAS,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACnD;IAAE,SAAS,EAAE,QAAQ,GAAG,OAAO,CAAC;IAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAC7D;IACE,SAAS,EAAE,IAAI,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,aAAa,CAAC,EAAE,gCAAgC,GAAG,IAAI,CAAC;CACzD,GACD;IAAE,SAAS,EAAE,oBAAoB,CAAC;IAAC,sBAAsB,EAAE,MAAM,CAAA;CAAE,CAAC;AAExE,MAAM,MAAM,mCAAmC,GAC3C,qBAAqB,GACrB,eAAe,GACf,yBAAyB,GACzB,uBAAuB,GACvB,iBAAiB,GACjB,2BAA2B,CAAC;AAEhC,MAAM,MAAM,qBAAqB,GAAG,YAAY,GAAG,cAAc,GAAG,2BAA2B,CAAC;AAEhG,MAAM,MAAM,sBAAsB,GAC9B,iBAAiB,GACjB,cAAc,GACd,2BAA2B,GAC3B,WAAW,CAAC;AAEhB,MAAM,MAAM,2BAA2B,GAAG,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,aAAa,CAAC;AAE3F,MAAM,MAAM,uBAAuB,GAC/B;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,oBAAoB,CAAC,EAAE,KAAK,CAAA;CAAE,GAC/C;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpD,iEAAiE;AACjE,MAAM,WAAW,oBAAoB,CAAC,YAAY,SAAS,MAAM,GAAG,MAAM;IACxE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,kBAAkB,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,KAAK,+CAA+C,GAAG,OAAO,CAC5D,mCAAmC,EACnC,yBAAyB,GAAG,2BAA2B,CACxD,CAAC;AAEF,sEAAsE;AACtE,MAAM,MAAM,kCAAkC,GAAG;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE,GAAG,CAC3E;IACE,eAAe,EAAE,YAAY,CAAC;IAC9B,6BAA6B,EAAE,+CAA+C,CAAC;CAChF,GACD;IACE,eAAe,EAAE,cAAc,GAAG,2BAA2B,CAAC;IAC9D,6BAA6B,EAAE,mCAAmC,CAAC;CACpE,CACJ,CAAC;AAEF,yEAAyE;AACzE,MAAM,WAAW,qCAAqC;IACpD,6BAA6B,CAAC,EAAE,mCAAmC,GAAG,IAAI,CAAC;IAC3E,eAAe,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC/C,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,MAAM,0BAA0B,CAAC,YAAY,SAAS,MAAM,GAAG,MAAM,IACzE,YAAY,SAAS,UAAU,GAAG,kCAAkC,GAClE,qCAAqC,CAAC;AAE1C,UAAU,2BAA2B;IACnC,oBAAoB,CAAC,EAAE,IAAI,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,YAAY,CAAC,EAAE,uBAAuB,GAAG,IAAI,CAAC;CAC/C;AAED,KAAK,kCAAkC,GACnC;IACE,aAAa,EAAE,YAAY,CAAC;IAC5B,eAAe,EAAE,YAAY,GAAG,2BAA2B,CAAC;IAC5D,gBAAgB,EAAE,iBAAiB,GAAG,2BAA2B,GAAG,WAAW,CAAC;CACjF,GACD;IACE,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,aAAa,GAAG,IAAI,CAAC;IACzD,gBAAgB,EAAE,sBAAsB,CAAC;CAC1C,CAAC;AAEN,UAAU,qCAAqC;IAC7C,aAAa,CAAC,EAAE,2BAA2B,GAAG,IAAI,CAAC;IACnD,gBAAgB,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;CAClD;AAED,KAAK,0BAA0B,CAAC,YAAY,SAAS,MAAM,IACzD,YAAY,SAAS,UAAU,GAAG,kCAAkC,GAClE,qCAAqC,CAAC;AAE1C,UAAU,yBAAyB;IACjC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,WAAW,CAAC;IAC9B,aAAa,CAAC,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,YAAY,CAAC,EAAE,IAAI,CAAC;CACrB;AAED,uEAAuE;AACvE,MAAM,MAAM,uBAAuB,CAAC,YAAY,SAAS,MAAM,GAAG,MAAM,IACtE,oBAAoB,CAAC,YAAY,CAAC,GAAG,0BAA0B,CAAC,YAAY,CAAC,GAAG,yBAAyB,CAAC;AAE5G,2EAA2E;AAC3E,MAAM,MAAM,yBAAyB,CAAC,YAAY,SAAS,MAAM,GAAG,MAAM,IACxE,oBAAoB,CAAC,YAAY,CAAC,GAChC,0BAA0B,CAAC,YAAY,CAAC,GACxC,2BAA2B,GAC3B,0BAA0B,CAAC,YAAY,CAAC,CAAC;AAE7C,+DAA+D;AAC/D,MAAM,MAAM,gBAAgB,CAAC,YAAY,SAAS,MAAM,GAAG,MAAM,IAC7D,uBAAuB,CAAC,YAAY,CAAC,GACrC,yBAAyB,CAAC,YAAY,CAAC,CAAC;AAE5C,0CAA0C;AAC1C,MAAM,MAAM,+BAA+B,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;AAElF,qFAAqF;AACrF,MAAM,MAAM,iCAAiC,GAAG,yBAAyB,CAAC,UAAU,CAAC,CAAC;AAEtF,2CAA2C;AAC3C,MAAM,MAAM,wBAAwB,GAAG,+BAA+B,GAAG,iCAAiC,CAAC;AAqD3G,4DAA4D;AAC5D,qBAAa,WAAW,CAAC,KAAK,CAAC,YAAY,SAAS,MAAM,GAAG,MAAM;IACjE,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAG,iBAAiB,CAAU;IAE3D,MAAM,CAAC,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,yBAAyB;IAI7E,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiC;gBAE3C,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,gBAAgB,CAAC,YAAY,CAAC;IA4DvE,MAAM,CAAC,gBAAgB,CACrB,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,8BAAmC,GAC3C,WAAW;IAId,0EAA0E;IAC1E,MAAM,CAAC,sBAAsB,CAC3B,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9B,OAAO,EAAE,kBAAkB,GAC1B,WAAW;IAgEd,UAAU,IAAI,MAAM;IAIpB,UAAU,IAAI,kBAAkB;IAIhC,eAAe,IAAI,MAAM;IAIzB,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAyC9B"}
|
|
@@ -70,6 +70,7 @@ class CustomField {
|
|
|
70
70
|
return { type: CustomField.componentType, cfv2_id: customFieldId };
|
|
71
71
|
}
|
|
72
72
|
constructor(scope, props) {
|
|
73
|
+
const runtimeProps = props;
|
|
73
74
|
if (!props.apiName.endsWith('__cfv2')) {
|
|
74
75
|
throw new Error(`Custom Field V2 api_name must end with __cfv2: ${props.apiName}`);
|
|
75
76
|
}
|
|
@@ -77,6 +78,28 @@ class CustomField {
|
|
|
77
78
|
throw new Error(`Custom field "${props.apiName}" section belongs to "${props.section.getModelRqlName()}", ` +
|
|
78
79
|
`but the field belongs to "${props.modelRqlName}".`);
|
|
79
80
|
}
|
|
81
|
+
if (runtimeProps.rqlDefinitionFormula != null && runtimeProps.fieldWriteAccess !== 'NO_ACCESS') {
|
|
82
|
+
throw new Error(`Formula custom field "${props.apiName}" must have fieldWriteAccess "NO_ACCESS".`);
|
|
83
|
+
}
|
|
84
|
+
if (props.modelRqlName === 'Employee') {
|
|
85
|
+
if (runtimeProps.fieldPermissionClassification == null ||
|
|
86
|
+
runtimeProps.fieldReadAccess == null ||
|
|
87
|
+
runtimeProps.fieldWriteAccess == null ||
|
|
88
|
+
runtimeProps.applicableGroup == null) {
|
|
89
|
+
throw new Error(`Employee custom field "${props.apiName}" requires fieldPermissionClassification, ` +
|
|
90
|
+
`fieldReadAccess, fieldWriteAccess, and applicableGroup.`);
|
|
91
|
+
}
|
|
92
|
+
if (runtimeProps.fieldReadAccess === 'ALL_ACCESS' &&
|
|
93
|
+
(runtimeProps.fieldPermissionClassification === 'SENSITIVE_PERSONAL_INFO' ||
|
|
94
|
+
runtimeProps.fieldPermissionClassification === 'SENSITIVE_EMPLOYMENT_INFO')) {
|
|
95
|
+
throw new Error(`Employee custom field "${props.apiName}" cannot use a sensitive permission classification ` +
|
|
96
|
+
`with fieldReadAccess "ALL_ACCESS".`);
|
|
97
|
+
}
|
|
98
|
+
if (runtimeProps.collectDuring === 'ONBOARDING' &&
|
|
99
|
+
(runtimeProps.fieldReadAccess === 'ADMIN_ACCESS' || runtimeProps.fieldWriteAccess === 'ADMIN_ACCESS')) {
|
|
100
|
+
throw new Error(`Employee onboarding custom field "${props.apiName}" must grant the employee read and write access.`);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
80
103
|
this._fieldId = props.fieldId ?? (0, _helpers_1.generateId)('cfv2');
|
|
81
104
|
this.props = {
|
|
82
105
|
...props,
|
|
@@ -110,8 +133,12 @@ class CustomField {
|
|
|
110
133
|
displayOrder: component['display_order'] ?? null,
|
|
111
134
|
};
|
|
112
135
|
if (typeof formula === 'string') {
|
|
136
|
+
if (common.fieldWriteAccess != null && common.fieldWriteAccess !== 'NO_ACCESS') {
|
|
137
|
+
throw new TypeError(`Formula CUSTOM_FIELD_V2 field_write_access must be NO_ACCESS.`);
|
|
138
|
+
}
|
|
113
139
|
return new CustomField(scope, {
|
|
114
140
|
...common,
|
|
141
|
+
fieldWriteAccess: 'NO_ACCESS',
|
|
115
142
|
rqlDefinitionFormula: formula,
|
|
116
143
|
collectDuring: null,
|
|
117
144
|
required: null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-field.js","sourceRoot":"","sources":["../../src/lib/manifest/custom-field.ts"],"names":[],"mappings":";;;AAAA,4CAAwC;AAExC,8EAA8G;AAE9G,gFAAwG;AAE3F,QAAA,kBAAkB,GAAG;IAChC,MAAM;IACN,MAAM;IACN,QAAQ;IACR,UAAU;IACV,YAAY;IACZ,QAAQ;IACR,MAAM;IACN,IAAI;IACJ,OAAO;IACP,UAAU;IACV,OAAO;IACP,cAAc;IACd,SAAS;IACT,SAAS;IACT,oBAAoB;IACpB,OAAO;IACP,KAAK;CACG,CAAC;
|
|
1
|
+
{"version":3,"file":"custom-field.js","sourceRoot":"","sources":["../../src/lib/manifest/custom-field.ts"],"names":[],"mappings":"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"}
|
|
@@ -67,6 +67,7 @@ export class CustomField {
|
|
|
67
67
|
return { type: CustomField.componentType, cfv2_id: customFieldId };
|
|
68
68
|
}
|
|
69
69
|
constructor(scope, props) {
|
|
70
|
+
const runtimeProps = props;
|
|
70
71
|
if (!props.apiName.endsWith('__cfv2')) {
|
|
71
72
|
throw new Error(`Custom Field V2 api_name must end with __cfv2: ${props.apiName}`);
|
|
72
73
|
}
|
|
@@ -74,6 +75,28 @@ export class CustomField {
|
|
|
74
75
|
throw new Error(`Custom field "${props.apiName}" section belongs to "${props.section.getModelRqlName()}", ` +
|
|
75
76
|
`but the field belongs to "${props.modelRqlName}".`);
|
|
76
77
|
}
|
|
78
|
+
if (runtimeProps.rqlDefinitionFormula != null && runtimeProps.fieldWriteAccess !== 'NO_ACCESS') {
|
|
79
|
+
throw new Error(`Formula custom field "${props.apiName}" must have fieldWriteAccess "NO_ACCESS".`);
|
|
80
|
+
}
|
|
81
|
+
if (props.modelRqlName === 'Employee') {
|
|
82
|
+
if (runtimeProps.fieldPermissionClassification == null ||
|
|
83
|
+
runtimeProps.fieldReadAccess == null ||
|
|
84
|
+
runtimeProps.fieldWriteAccess == null ||
|
|
85
|
+
runtimeProps.applicableGroup == null) {
|
|
86
|
+
throw new Error(`Employee custom field "${props.apiName}" requires fieldPermissionClassification, ` +
|
|
87
|
+
`fieldReadAccess, fieldWriteAccess, and applicableGroup.`);
|
|
88
|
+
}
|
|
89
|
+
if (runtimeProps.fieldReadAccess === 'ALL_ACCESS' &&
|
|
90
|
+
(runtimeProps.fieldPermissionClassification === 'SENSITIVE_PERSONAL_INFO' ||
|
|
91
|
+
runtimeProps.fieldPermissionClassification === 'SENSITIVE_EMPLOYMENT_INFO')) {
|
|
92
|
+
throw new Error(`Employee custom field "${props.apiName}" cannot use a sensitive permission classification ` +
|
|
93
|
+
`with fieldReadAccess "ALL_ACCESS".`);
|
|
94
|
+
}
|
|
95
|
+
if (runtimeProps.collectDuring === 'ONBOARDING' &&
|
|
96
|
+
(runtimeProps.fieldReadAccess === 'ADMIN_ACCESS' || runtimeProps.fieldWriteAccess === 'ADMIN_ACCESS')) {
|
|
97
|
+
throw new Error(`Employee onboarding custom field "${props.apiName}" must grant the employee read and write access.`);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
77
100
|
this._fieldId = props.fieldId ?? generateId('cfv2');
|
|
78
101
|
this.props = {
|
|
79
102
|
...props,
|
|
@@ -107,8 +130,12 @@ export class CustomField {
|
|
|
107
130
|
displayOrder: component['display_order'] ?? null,
|
|
108
131
|
};
|
|
109
132
|
if (typeof formula === 'string') {
|
|
133
|
+
if (common.fieldWriteAccess != null && common.fieldWriteAccess !== 'NO_ACCESS') {
|
|
134
|
+
throw new TypeError(`Formula CUSTOM_FIELD_V2 field_write_access must be NO_ACCESS.`);
|
|
135
|
+
}
|
|
110
136
|
return new CustomField(scope, {
|
|
111
137
|
...common,
|
|
138
|
+
fieldWriteAccess: 'NO_ACCESS',
|
|
112
139
|
rqlDefinitionFormula: formula,
|
|
113
140
|
collectDuring: null,
|
|
114
141
|
required: null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-field.mjs","sourceRoot":"","sources":["../../src/lib/manifest/custom-field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,uBAAmB;AAExC,OAAO,EAAE,0BAA0B,EAAuC,wCAAoC;AAE9G,OAAO,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,yCAAqC;AAExG,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,MAAM;IACN,MAAM;IACN,QAAQ;IACR,UAAU;IACV,YAAY;IACZ,QAAQ;IACR,MAAM;IACN,IAAI;IACJ,OAAO;IACP,UAAU;IACV,OAAO;IACP,cAAc;IACd,SAAS;IACT,SAAS;IACT,oBAAoB;IACpB,OAAO;IACP,KAAK;CACG,CAAC;
|
|
1
|
+
{"version":3,"file":"custom-field.mjs","sourceRoot":"","sources":["../../src/lib/manifest/custom-field.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { type ExistingManifestContextOptions } from "./existing-manifest-context.mjs";
|
|
2
|
+
import type { ManifestComponentDeletion, ManifestScope } from "./manifest-builder.mjs";
|
|
3
|
+
export type CustomSkillStatus = 'active' | 'inactive';
|
|
4
|
+
export type CustomSkillSourceType = 'user' | 'company';
|
|
5
|
+
/**
|
|
6
|
+
* Initialization properties for {@link CustomSkill}.
|
|
7
|
+
*/
|
|
8
|
+
export interface CustomSkillProps {
|
|
9
|
+
/**
|
|
10
|
+
* Source-side identifier for this Custom Skill.
|
|
11
|
+
*
|
|
12
|
+
* For a new skill, omit this field and the SDK generates a temporary handle
|
|
13
|
+
* that Composer maps to the skill's generated database UUID during deploy.
|
|
14
|
+
*
|
|
15
|
+
* For an existing skill, use the `source_skill_id` loaded from component
|
|
16
|
+
* search/extraction.
|
|
17
|
+
*
|
|
18
|
+
* Optional. Auto-generated when omitted. @default generateId('skill')
|
|
19
|
+
*/
|
|
20
|
+
sourceSkillId?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Display name shown in Rippling AI.
|
|
23
|
+
*
|
|
24
|
+
* Required.
|
|
25
|
+
*/
|
|
26
|
+
name: string;
|
|
27
|
+
/**
|
|
28
|
+
* Description used to explain when the skill applies.
|
|
29
|
+
*
|
|
30
|
+
* Required. Use `null` to clear this field when updating an existing skill.
|
|
31
|
+
*/
|
|
32
|
+
description: string | null;
|
|
33
|
+
/**
|
|
34
|
+
* Markdown instruction content for the skill.
|
|
35
|
+
*
|
|
36
|
+
* Required.
|
|
37
|
+
*/
|
|
38
|
+
content: string;
|
|
39
|
+
/**
|
|
40
|
+
* Optional folder path for organizing skills. Use `null` to clear this field
|
|
41
|
+
* when updating an existing skill.
|
|
42
|
+
*/
|
|
43
|
+
path?: string | null;
|
|
44
|
+
/**
|
|
45
|
+
* Whether the skill is active or inactive.
|
|
46
|
+
*
|
|
47
|
+
* Required.
|
|
48
|
+
*/
|
|
49
|
+
status: CustomSkillStatus;
|
|
50
|
+
/**
|
|
51
|
+
* Skill visibility. `user` creates a personal skill; `company` creates a
|
|
52
|
+
* company skill.
|
|
53
|
+
*
|
|
54
|
+
* Optional create-time visibility. Do not set when updating an existing
|
|
55
|
+
* skill; use `CustomSkill.loadFromExisting(...)` so the extracted value can
|
|
56
|
+
* round-trip unchanged.
|
|
57
|
+
*/
|
|
58
|
+
sourceType?: CustomSkillSourceType;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Defines a Rippling AI Custom Skill and registers it with the manifest.
|
|
62
|
+
*/
|
|
63
|
+
export declare class CustomSkill {
|
|
64
|
+
static readonly componentType: "CUSTOM_SKILL";
|
|
65
|
+
static toDeletionIdentifier(sourceSkillId: string): ManifestComponentDeletion;
|
|
66
|
+
private readonly _sourceSkillId;
|
|
67
|
+
private _name;
|
|
68
|
+
private _description;
|
|
69
|
+
private _content;
|
|
70
|
+
private _path;
|
|
71
|
+
private _status;
|
|
72
|
+
private _sourceType;
|
|
73
|
+
/**
|
|
74
|
+
* @param scope - The manifest to register this skill with.
|
|
75
|
+
* @param props - Initialization properties.
|
|
76
|
+
*/
|
|
77
|
+
constructor(scope: ManifestScope, props: CustomSkillProps);
|
|
78
|
+
/**
|
|
79
|
+
* Loads this skill from the active existing-manifest JSON context.
|
|
80
|
+
*/
|
|
81
|
+
static loadFromExisting(sourceSkillId: string, options?: ExistingManifestContextOptions): CustomSkill;
|
|
82
|
+
/** @internal Hydrates a custom skill from existing manifest wire JSON. */
|
|
83
|
+
static _fromExistingComponent(scope: ManifestScope, component: Record<string, any>): CustomSkill;
|
|
84
|
+
/**
|
|
85
|
+
* Returns this skill's source-side manifest identifier. New skills use a
|
|
86
|
+
* generated temporary handle; extracted skills use their database UUID.
|
|
87
|
+
*/
|
|
88
|
+
getSourceSkillId(): string;
|
|
89
|
+
/**
|
|
90
|
+
* Replaces the display name for this skill.
|
|
91
|
+
*/
|
|
92
|
+
setName(name: string): this;
|
|
93
|
+
/**
|
|
94
|
+
* Replaces the description for this skill. Pass `null` to clear it.
|
|
95
|
+
*/
|
|
96
|
+
setDescription(description: string | null): this;
|
|
97
|
+
/**
|
|
98
|
+
* Replaces the plaintext markdown instruction content for this skill.
|
|
99
|
+
*/
|
|
100
|
+
setContent(content: string): this;
|
|
101
|
+
/**
|
|
102
|
+
* Replaces the optional folder path for this skill. Pass `null` to clear it,
|
|
103
|
+
* or `undefined` to omit it from the serialized manifest.
|
|
104
|
+
*/
|
|
105
|
+
setPath(path: string | null | undefined): this;
|
|
106
|
+
/**
|
|
107
|
+
* Replaces whether this skill is active or inactive.
|
|
108
|
+
*/
|
|
109
|
+
setStatus(status: CustomSkillStatus): this;
|
|
110
|
+
/**
|
|
111
|
+
* Serializes this skill to the wire format consumed by the manifest install endpoint.
|
|
112
|
+
*/
|
|
113
|
+
toDict(): Record<string, any>;
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=custom-skill.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-skill.d.mts","sourceRoot":"","sources":["../../src/lib/manifest/custom-skill.ts"],"names":[],"mappings":"AACA,OAAO,EAA8B,KAAK,8BAA8B,EAAE,wCAAoC;AAC9G,OAAO,KAAK,EAAE,yBAAyB,EAAE,aAAa,EAAE,+BAA2B;AAGnF,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,UAAU,CAAC;AACtD,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;;;OAIG;IACH,MAAM,EAAE,iBAAiB,CAAC;IAC1B;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACpC;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAG,cAAc,CAAU;IAExD,MAAM,CAAC,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,yBAAyB;IAO7E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,WAAW,CAAoC;IAEvD;;;OAGG;gBACS,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,gBAAgB;IAiBzD;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,GAAE,8BAAmC,GAAG,WAAW;IAIzG,0EAA0E;IAC1E,MAAM,CAAC,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,WAAW;IAyBhG;;;OAGG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAKhD;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKjC;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IAK9C;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAK1C;;OAEG;IACH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAa9B"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { type ExistingManifestContextOptions } from "./existing-manifest-context.js";
|
|
2
|
+
import type { ManifestComponentDeletion, ManifestScope } from "./manifest-builder.js";
|
|
3
|
+
export type CustomSkillStatus = 'active' | 'inactive';
|
|
4
|
+
export type CustomSkillSourceType = 'user' | 'company';
|
|
5
|
+
/**
|
|
6
|
+
* Initialization properties for {@link CustomSkill}.
|
|
7
|
+
*/
|
|
8
|
+
export interface CustomSkillProps {
|
|
9
|
+
/**
|
|
10
|
+
* Source-side identifier for this Custom Skill.
|
|
11
|
+
*
|
|
12
|
+
* For a new skill, omit this field and the SDK generates a temporary handle
|
|
13
|
+
* that Composer maps to the skill's generated database UUID during deploy.
|
|
14
|
+
*
|
|
15
|
+
* For an existing skill, use the `source_skill_id` loaded from component
|
|
16
|
+
* search/extraction.
|
|
17
|
+
*
|
|
18
|
+
* Optional. Auto-generated when omitted. @default generateId('skill')
|
|
19
|
+
*/
|
|
20
|
+
sourceSkillId?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Display name shown in Rippling AI.
|
|
23
|
+
*
|
|
24
|
+
* Required.
|
|
25
|
+
*/
|
|
26
|
+
name: string;
|
|
27
|
+
/**
|
|
28
|
+
* Description used to explain when the skill applies.
|
|
29
|
+
*
|
|
30
|
+
* Required. Use `null` to clear this field when updating an existing skill.
|
|
31
|
+
*/
|
|
32
|
+
description: string | null;
|
|
33
|
+
/**
|
|
34
|
+
* Markdown instruction content for the skill.
|
|
35
|
+
*
|
|
36
|
+
* Required.
|
|
37
|
+
*/
|
|
38
|
+
content: string;
|
|
39
|
+
/**
|
|
40
|
+
* Optional folder path for organizing skills. Use `null` to clear this field
|
|
41
|
+
* when updating an existing skill.
|
|
42
|
+
*/
|
|
43
|
+
path?: string | null;
|
|
44
|
+
/**
|
|
45
|
+
* Whether the skill is active or inactive.
|
|
46
|
+
*
|
|
47
|
+
* Required.
|
|
48
|
+
*/
|
|
49
|
+
status: CustomSkillStatus;
|
|
50
|
+
/**
|
|
51
|
+
* Skill visibility. `user` creates a personal skill; `company` creates a
|
|
52
|
+
* company skill.
|
|
53
|
+
*
|
|
54
|
+
* Optional create-time visibility. Do not set when updating an existing
|
|
55
|
+
* skill; use `CustomSkill.loadFromExisting(...)` so the extracted value can
|
|
56
|
+
* round-trip unchanged.
|
|
57
|
+
*/
|
|
58
|
+
sourceType?: CustomSkillSourceType;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Defines a Rippling AI Custom Skill and registers it with the manifest.
|
|
62
|
+
*/
|
|
63
|
+
export declare class CustomSkill {
|
|
64
|
+
static readonly componentType: "CUSTOM_SKILL";
|
|
65
|
+
static toDeletionIdentifier(sourceSkillId: string): ManifestComponentDeletion;
|
|
66
|
+
private readonly _sourceSkillId;
|
|
67
|
+
private _name;
|
|
68
|
+
private _description;
|
|
69
|
+
private _content;
|
|
70
|
+
private _path;
|
|
71
|
+
private _status;
|
|
72
|
+
private _sourceType;
|
|
73
|
+
/**
|
|
74
|
+
* @param scope - The manifest to register this skill with.
|
|
75
|
+
* @param props - Initialization properties.
|
|
76
|
+
*/
|
|
77
|
+
constructor(scope: ManifestScope, props: CustomSkillProps);
|
|
78
|
+
/**
|
|
79
|
+
* Loads this skill from the active existing-manifest JSON context.
|
|
80
|
+
*/
|
|
81
|
+
static loadFromExisting(sourceSkillId: string, options?: ExistingManifestContextOptions): CustomSkill;
|
|
82
|
+
/** @internal Hydrates a custom skill from existing manifest wire JSON. */
|
|
83
|
+
static _fromExistingComponent(scope: ManifestScope, component: Record<string, any>): CustomSkill;
|
|
84
|
+
/**
|
|
85
|
+
* Returns this skill's source-side manifest identifier. New skills use a
|
|
86
|
+
* generated temporary handle; extracted skills use their database UUID.
|
|
87
|
+
*/
|
|
88
|
+
getSourceSkillId(): string;
|
|
89
|
+
/**
|
|
90
|
+
* Replaces the display name for this skill.
|
|
91
|
+
*/
|
|
92
|
+
setName(name: string): this;
|
|
93
|
+
/**
|
|
94
|
+
* Replaces the description for this skill. Pass `null` to clear it.
|
|
95
|
+
*/
|
|
96
|
+
setDescription(description: string | null): this;
|
|
97
|
+
/**
|
|
98
|
+
* Replaces the plaintext markdown instruction content for this skill.
|
|
99
|
+
*/
|
|
100
|
+
setContent(content: string): this;
|
|
101
|
+
/**
|
|
102
|
+
* Replaces the optional folder path for this skill. Pass `null` to clear it,
|
|
103
|
+
* or `undefined` to omit it from the serialized manifest.
|
|
104
|
+
*/
|
|
105
|
+
setPath(path: string | null | undefined): this;
|
|
106
|
+
/**
|
|
107
|
+
* Replaces whether this skill is active or inactive.
|
|
108
|
+
*/
|
|
109
|
+
setStatus(status: CustomSkillStatus): this;
|
|
110
|
+
/**
|
|
111
|
+
* Serializes this skill to the wire format consumed by the manifest install endpoint.
|
|
112
|
+
*/
|
|
113
|
+
toDict(): Record<string, any>;
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=custom-skill.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-skill.d.ts","sourceRoot":"","sources":["../../src/lib/manifest/custom-skill.ts"],"names":[],"mappings":"AACA,OAAO,EAA8B,KAAK,8BAA8B,EAAE,uCAAoC;AAC9G,OAAO,KAAK,EAAE,yBAAyB,EAAE,aAAa,EAAE,8BAA2B;AAGnF,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,UAAU,CAAC;AACtD,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;;;OAIG;IACH,MAAM,EAAE,iBAAiB,CAAC;IAC1B;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACpC;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAG,cAAc,CAAU;IAExD,MAAM,CAAC,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,yBAAyB;IAO7E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,WAAW,CAAoC;IAEvD;;;OAGG;gBACS,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,gBAAgB;IAiBzD;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,GAAE,8BAAmC,GAAG,WAAW;IAIzG,0EAA0E;IAC1E,MAAM,CAAC,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,WAAW;IAyBhG;;;OAGG;IACH,gBAAgB,IAAI,MAAM;IAI1B;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAKhD;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKjC;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IAK9C;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAK1C;;OAEG;IACH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CAa9B"}
|