@lark-project/js-sdk 2.0.16-dev.0 → 2.0.16-dev.builder.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/es/index.js CHANGED
@@ -450,6 +450,16 @@ _a25 = IMPL_KEY;
450
450
  */
451
451
  CustomField[_a25] = "customField";
452
452
 
453
+ // src/features/BuilderComponent.ts
454
+ var _a26;
455
+ var BuilderComponent = class extends BaseModel {
456
+ };
457
+ _a26 = IMPL_KEY;
458
+ /**
459
+ * @internal
460
+ */
461
+ BuilderComponent[_a26] = "builderComp";
462
+
453
463
  // src/client.ts
454
464
  function getImplClass(decl, impls) {
455
465
  return impls == null ? void 0 : impls[decl[IMPL_KEY]];
@@ -529,6 +539,13 @@ var _SDKClient = class {
529
539
  get customField() {
530
540
  return getImplValue(CustomField, this._meegoBizHub);
531
541
  }
542
+ /**
543
+ * 应用主页组件点位容器特有能力
544
+ * only 2.0
545
+ */
546
+ get builderComponent() {
547
+ return getImplValue(BuilderComponent, this._meegoBizHub);
548
+ }
532
549
  /**
533
550
  * 应用导航
534
551
  */
@@ -649,7 +666,7 @@ var SDKClient = _SDKClient;
649
666
  /**
650
667
  * SDK 版本号
651
668
  */
652
- SDKClient.version = "2.0.16-dev.0";
669
+ SDKClient.version = "2.0.16-dev.builder.1";
653
670
 
654
671
  // src/types/biz.ts
655
672
  var AttributeType = /* @__PURE__ */ ((AttributeType2) => {
@@ -730,6 +747,21 @@ var CustomComponentType = /* @__PURE__ */ ((CustomComponentType2) => {
730
747
  CustomComponentType2["Schedule"] = "schedule";
731
748
  return CustomComponentType2;
732
749
  })(CustomComponentType || {});
750
+ var BuilderPropTemplateType = /* @__PURE__ */ ((BuilderPropTemplateType2) => {
751
+ BuilderPropTemplateType2["Text"] = "text";
752
+ BuilderPropTemplateType2["Number"] = "number";
753
+ BuilderPropTemplateType2["Select"] = "select";
754
+ BuilderPropTemplateType2["Boolean"] = "boolean";
755
+ BuilderPropTemplateType2["MultiSelect"] = "multiSelect";
756
+ BuilderPropTemplateType2["DatePrecise"] = "dateWithTime";
757
+ BuilderPropTemplateType2["DateRange"] = "dateRange";
758
+ BuilderPropTemplateType2["WorkItemInstance"] = "workItemInstance";
759
+ BuilderPropTemplateType2["WorkItemTypeSelect"] = "workItemTypeSelect";
760
+ BuilderPropTemplateType2["ViewSelect"] = "viewSelect";
761
+ BuilderPropTemplateType2["workItemInstanceWithField"] = "workItemInstanceWithField";
762
+ BuilderPropTemplateType2["workItemTypeWithField"] = "workItemTypeWithField";
763
+ return BuilderPropTemplateType2;
764
+ })(BuilderPropTemplateType || {});
733
765
 
734
766
  // src/errors/CustomError.ts
735
767
  var CustomError = class extends Error {
@@ -822,6 +854,8 @@ var src_default = SDKClient;
822
854
  export {
823
855
  ActionSheet,
824
856
  AttributeType,
857
+ BuilderComponent,
858
+ BuilderPropTemplateType,
825
859
  Button,
826
860
  ButtonScene,
827
861
  Clipboard,
package/dist/lib/index.js CHANGED
@@ -50,6 +50,8 @@ var src_exports = {};
50
50
  __export(src_exports, {
51
51
  ActionSheet: () => ActionSheet,
52
52
  AttributeType: () => AttributeType,
53
+ BuilderComponent: () => BuilderComponent,
54
+ BuilderPropTemplateType: () => BuilderPropTemplateType,
53
55
  Button: () => Button,
54
56
  ButtonScene: () => ButtonScene,
55
57
  Clipboard: () => Clipboard,
@@ -516,6 +518,16 @@ _a25 = IMPL_KEY;
516
518
  */
517
519
  CustomField[_a25] = "customField";
518
520
 
521
+ // src/features/BuilderComponent.ts
522
+ var _a26;
523
+ var BuilderComponent = class extends BaseModel {
524
+ };
525
+ _a26 = IMPL_KEY;
526
+ /**
527
+ * @internal
528
+ */
529
+ BuilderComponent[_a26] = "builderComp";
530
+
519
531
  // src/client.ts
520
532
  function getImplClass(decl, impls) {
521
533
  return impls == null ? void 0 : impls[decl[IMPL_KEY]];
@@ -595,6 +607,13 @@ var _SDKClient = class {
595
607
  get customField() {
596
608
  return getImplValue(CustomField, this._meegoBizHub);
597
609
  }
610
+ /**
611
+ * 应用主页组件点位容器特有能力
612
+ * only 2.0
613
+ */
614
+ get builderComponent() {
615
+ return getImplValue(BuilderComponent, this._meegoBizHub);
616
+ }
598
617
  /**
599
618
  * 应用导航
600
619
  */
@@ -715,7 +734,7 @@ var SDKClient = _SDKClient;
715
734
  /**
716
735
  * SDK 版本号
717
736
  */
718
- SDKClient.version = "2.0.16-dev.0";
737
+ SDKClient.version = "2.0.16-dev.builder.1";
719
738
 
720
739
  // src/types/biz.ts
721
740
  var AttributeType = /* @__PURE__ */ ((AttributeType2) => {
@@ -796,6 +815,21 @@ var CustomComponentType = /* @__PURE__ */ ((CustomComponentType2) => {
796
815
  CustomComponentType2["Schedule"] = "schedule";
797
816
  return CustomComponentType2;
798
817
  })(CustomComponentType || {});
818
+ var BuilderPropTemplateType = /* @__PURE__ */ ((BuilderPropTemplateType2) => {
819
+ BuilderPropTemplateType2["Text"] = "text";
820
+ BuilderPropTemplateType2["Number"] = "number";
821
+ BuilderPropTemplateType2["Select"] = "select";
822
+ BuilderPropTemplateType2["Boolean"] = "boolean";
823
+ BuilderPropTemplateType2["MultiSelect"] = "multiSelect";
824
+ BuilderPropTemplateType2["DatePrecise"] = "dateWithTime";
825
+ BuilderPropTemplateType2["DateRange"] = "dateRange";
826
+ BuilderPropTemplateType2["WorkItemInstance"] = "workItemInstance";
827
+ BuilderPropTemplateType2["WorkItemTypeSelect"] = "workItemTypeSelect";
828
+ BuilderPropTemplateType2["ViewSelect"] = "viewSelect";
829
+ BuilderPropTemplateType2["workItemInstanceWithField"] = "workItemInstanceWithField";
830
+ BuilderPropTemplateType2["workItemTypeWithField"] = "workItemTypeWithField";
831
+ return BuilderPropTemplateType2;
832
+ })(BuilderPropTemplateType || {});
799
833
 
800
834
  // src/errors/CustomError.ts
801
835
  var CustomError = class extends Error {
@@ -889,6 +923,8 @@ var src_default = SDKClient;
889
923
  0 && (module.exports = {
890
924
  ActionSheet,
891
925
  AttributeType,
926
+ BuilderComponent,
927
+ BuilderPropTemplateType,
892
928
  Button,
893
929
  ButtonScene,
894
930
  Clipboard,
@@ -797,6 +797,131 @@ interface ContainerModalConfigureOptions {
797
797
  content: string;
798
798
  };
799
799
  }
800
+ /** ----------------------- builder 组件构成类型 ----------------------- */
801
+ interface BuilderComponentFeatureContext {
802
+ /**
803
+ * builder 组件当前所属空间标识
804
+ */
805
+ spaceId: string;
806
+ }
807
+ /**
808
+ * builder 组件属性值类型
809
+ */
810
+ type BuilderPropLayout = {
811
+ width: number;
812
+ height: number;
813
+ positionX: number;
814
+ positionY: number;
815
+ };
816
+ declare enum BuilderPropTemplateType {
817
+ Text = "text",
818
+ Number = "number",
819
+ Select = "select",
820
+ Boolean = "boolean",
821
+ MultiSelect = "multiSelect",
822
+ DatePrecise = "dateWithTime",
823
+ DateRange = "dateRange",
824
+ WorkItemInstance = "workItemInstance",
825
+ WorkItemTypeSelect = "workItemTypeSelect",
826
+ ViewSelect = "viewSelect",
827
+ workItemInstanceWithField = "workItemInstanceWithField",
828
+ workItemTypeWithField = "workItemTypeWithField"
829
+ }
830
+ type BuilderPropText = string;
831
+ type BuilderPropNumber = number;
832
+ type BuilderPropSelect = string;
833
+ type BuilderPropBoolean = boolean;
834
+ type BuilderPropMultiSelect = string[];
835
+ type BuilderPropDateWithTime = number;
836
+ type BuilderPropDateRange = {
837
+ start: number;
838
+ end: number;
839
+ };
840
+ type BuilderPropWorkItemType = {
841
+ spaceId: string;
842
+ workObjectId: string;
843
+ };
844
+ type BuilderPropWorkItemInstance = {
845
+ spaceId: string;
846
+ workObjectId: string;
847
+ workItemId: number;
848
+ };
849
+ type BuilderPropField = {
850
+ spaceId: string;
851
+ workObjectId: string;
852
+ fieldClass: 'field' | 'role';
853
+ fieldKey: string;
854
+ roleId: string;
855
+ };
856
+ type BuilderPropWorkItemTypeWithField = BuilderPropWorkItemType & {
857
+ fieldList: BuilderPropField[];
858
+ };
859
+ type BuilderPropWorkItemInsWithField = BuilderPropWorkItemInstance & {
860
+ fieldList: BuilderPropField[];
861
+ };
862
+ type BuilderPropView = {
863
+ viewId: string;
864
+ };
865
+ type BuilderPropWorkItemListAfterFilter = BuilderPropWorkItemInstance[];
866
+ type BuilderPropWorkItemListAfterSort = BuilderPropWorkItemInstance[];
867
+ type BuilderCompPropValueType = BuilderPropText | BuilderPropNumber | BuilderPropSelect | BuilderPropBoolean | BuilderPropMultiSelect | BuilderPropDateWithTime | BuilderPropDateRange | BuilderPropWorkItemType | BuilderPropWorkItemInstance | BuilderPropWorkItemTypeWithField | BuilderPropWorkItemInsWithField | BuilderPropView | BuilderPropWorkItemListAfterFilter | BuilderPropWorkItemListAfterSort;
868
+ /**
869
+ * builder 组件不同的属性类型对应的可读配置
870
+ */
871
+ type I18nTitleConfig = {
872
+ zh?: string;
873
+ en?: string;
874
+ ja?: string;
875
+ raw?: string;
876
+ };
877
+ type BuilderCompPropSelectConfig = {
878
+ title: I18nTitleConfig;
879
+ propType: BuilderPropTemplateType.Select | BuilderPropTemplateType.MultiSelect;
880
+ options: {
881
+ label: I18nTitleConfig;
882
+ value: string;
883
+ }[];
884
+ };
885
+ type BuilderCompPropBriefConfig = {
886
+ title: I18nTitleConfig;
887
+ propType: BuilderPropTemplateType;
888
+ };
889
+ type BuilderCompPropFullConfig = BuilderCompPropBriefConfig | BuilderCompPropSelectConfig;
890
+ /**
891
+ * builder 组件入参定义
892
+ */
893
+ type BuilderComponentProps = {
894
+ instanceId: string;
895
+ layout?: BuilderPropLayout;
896
+ } & {
897
+ [propName: string]: BuilderCompPropValueType;
898
+ };
899
+ type BuilderCompLayoutConfig =
900
+ /** 定高模式 */
901
+ {
902
+ mode: 0;
903
+ staticHeight: number;
904
+ }
905
+ /** 栅格模式 */
906
+ | {
907
+ mode: 1;
908
+ minWidth: number;
909
+ minHeight: number;
910
+ maxWidth: number;
911
+ maxHeight: number;
912
+ };
913
+ type BuilderComponentConfig = {
914
+ id: string;
915
+ layout: BuilderCompLayoutConfig;
916
+ } & {
917
+ [keyOfProp: string]: BuilderCompPropBriefConfig;
918
+ };
919
+ interface BuilderComponentPreset {
920
+ layout?: {
921
+ width: number;
922
+ height: number;
923
+ };
924
+ }
800
925
 
801
926
  /**
802
927
  * @internal
@@ -2013,6 +2138,59 @@ declare abstract class CustomField extends BaseModel {
2013
2138
  abstract openFullScreenPlugin(): void;
2014
2139
  }
2015
2140
 
2141
+ /**
2142
+ * @public
2143
+ * 自定义组件构成
2144
+ */
2145
+ declare abstract class BuilderComponent extends BaseModel {
2146
+ /**
2147
+ * @internal
2148
+ */
2149
+ protected static [IMPL_KEY]: string;
2150
+ /**
2151
+ * 获取 builder 组件上下文信息
2152
+ */
2153
+ abstract getContext: () => Promise<BuilderComponentFeatureContext>;
2154
+ /**
2155
+ * 获取 builder 组件入参
2156
+ * 每个 builder 组件一共有 3种数据:
2157
+ * * 组件实例数据(流入的属性值、组件当前的系统属性值)
2158
+ * * 组件配置数据(属于开发者后台的配置,用于描述组件所具有的属性)
2159
+ * * 组件预设值/默认值(属于开发者后台配置,只不过用于给组件提供默认值)
2160
+ * getProps 获取的即第一种数据 - 组件实例数据:
2161
+ * * 系统内置的所有组件通用属性值
2162
+ * * 开发者后台申明的组件入参特化属性值
2163
+ * 不同类型属性的数据结构可参考 JSSDK 包中的类型定义或开发者手册
2164
+ */
2165
+ abstract getProps: () => Promise<BuilderComponentProps>;
2166
+ /**
2167
+ * 用于监听 props 变更
2168
+ * @param callback 返回组件新的 props
2169
+ * @param watchKeys 监听的 key,只能监听属性的 key(不能监听 api key),不传默认监听所有 key。监听的 key 对应的值变更会触发回调
2170
+ * @returns
2171
+ */
2172
+ abstract watch: (callback: (next: BuilderComponentProps | Record<string, never>) => void, watchKeys?: keyof BuilderComponentProps | (keyof BuilderComponentProps)[]) => Promise<Off>;
2173
+ /**
2174
+ * 获取 builder 组件配置:
2175
+ * - 名称
2176
+ * - icon 地址
2177
+ * - layout
2178
+ * - 属性对应的配置
2179
+ */
2180
+ abstract getConfig: (propKeys?: string | string[]) => Promise<BuilderComponentConfig>;
2181
+ /**
2182
+ * 根据属性 key 点查属性的完整配置
2183
+ * - 单选多选类型的选项列表
2184
+ */
2185
+ abstract getPropFullConfig: (propKey: string) => Promise<BuilderCompPropFullConfig>;
2186
+ /**
2187
+ * 获取 builder 组件预设值:
2188
+ * - layout
2189
+ * 暂时不支持指定多组预设值/指定预设id(统一走 default),未来视诉求开放
2190
+ */
2191
+ abstract getPreset: (propKeys?: string[]) => Promise<BuilderComponentPreset>;
2192
+ }
2193
+
2016
2194
  /**
2017
2195
  * @public
2018
2196
  * SDKClient 的配置项
@@ -2081,6 +2259,11 @@ declare class SDKClient {
2081
2259
  * only 2.0
2082
2260
  */
2083
2261
  get customField(): CustomField;
2262
+ /**
2263
+ * 应用主页组件点位容器特有能力
2264
+ * only 2.0
2265
+ */
2266
+ get builderComponent(): BuilderComponent;
2084
2267
  /**
2085
2268
  * 应用导航
2086
2269
  */
@@ -2240,4 +2423,4 @@ declare class NotSupportedError extends CustomError {
2240
2423
  * @packageDocumentation
2241
2424
  */
2242
2425
 
2243
- export { ActionSheet, ActionSheetOptions, AttributeType, BatchButtonFeatureContext, BizLine, BriefField, BriefNode, BriefSpace, BriefTemplate, BriefView, BriefWorkItem, BriefWorkObject, Button, ButtonFeatureContext, ButtonScene, Clipboard, ColorScheme, ComponentScheduleIdentity, ComponentScheduleScene, Configuration, ConfigurationFeatureContext, ContainerModal, ContainerModalConfigureOptions, Context, Control, ControlFeatureContext, CreateButtonFeatureContext, CustomComponent, CustomComponentFeatureContext, CustomComponentProps, CustomComponentType, CustomField, CustomFieldConfig, CustomFieldFeatureContext, CustomFieldProps, CustomFieldValidateMsg, CustomFieldValueType, ExCompoundFieldValueType, Field, FieldType, FieldValue, FlowMode, IMPL_KEY, IPluginCustomBuildConfig, IRichTextEditorImageUploadComplete, IntegrationFeatureContext, Intercept, InterceptEvent, InterceptFeatureContext, InternalError, InvalidParamsError, Language, MEEGO_BIZ_HUB, Modal, ModalConfirmOptions, ModalOpenOptions, Navigation, NoAuthError, NodeStatus, NotFoundError, NotSupportedError, Off, OutOfLimitError, Page, PageFeatureContext, RichTextEditor, RichTextEditorContent, RichTextEditorOptions, Role, RoleOwners, SDKClient, SDKClientOptions, ScheduleCompValidateMsg, ScheduleCompValueType, ScheduleUnitButtonFeatureContext, Shared, Space, Storage, SubFieldType, Tab, TabFeatureContext, Toast, ToastOptions, User, UserInfo, Utils, View, ViewFeatureContext, WbsStatus, WorkItem, WorkItemButtonFeatureContext, WorkItemCreateFormPreset, WorkItemFinder, WorkItemFinderOptions, WorkObject, SDKClient as default, unwatch };
2426
+ export { ActionSheet, ActionSheetOptions, AttributeType, BatchButtonFeatureContext, BizLine, BriefField, BriefNode, BriefSpace, BriefTemplate, BriefView, BriefWorkItem, BriefWorkObject, BuilderCompLayoutConfig, BuilderCompPropBriefConfig, BuilderCompPropFullConfig, BuilderCompPropSelectConfig, BuilderCompPropValueType, BuilderComponent, BuilderComponentConfig, BuilderComponentFeatureContext, BuilderComponentPreset, BuilderComponentProps, BuilderPropBoolean, BuilderPropDateRange, BuilderPropDateWithTime, BuilderPropField, BuilderPropLayout, BuilderPropMultiSelect, BuilderPropNumber, BuilderPropSelect, BuilderPropTemplateType, BuilderPropText, BuilderPropView, BuilderPropWorkItemInsWithField, BuilderPropWorkItemInstance, BuilderPropWorkItemListAfterFilter, BuilderPropWorkItemListAfterSort, BuilderPropWorkItemType, BuilderPropWorkItemTypeWithField, Button, ButtonFeatureContext, ButtonScene, Clipboard, ColorScheme, ComponentScheduleIdentity, ComponentScheduleScene, Configuration, ConfigurationFeatureContext, ContainerModal, ContainerModalConfigureOptions, Context, Control, ControlFeatureContext, CreateButtonFeatureContext, CustomComponent, CustomComponentFeatureContext, CustomComponentProps, CustomComponentType, CustomField, CustomFieldConfig, CustomFieldFeatureContext, CustomFieldProps, CustomFieldValidateMsg, CustomFieldValueType, ExCompoundFieldValueType, Field, FieldType, FieldValue, FlowMode, I18nTitleConfig, IMPL_KEY, IPluginCustomBuildConfig, IRichTextEditorImageUploadComplete, IntegrationFeatureContext, Intercept, InterceptEvent, InterceptFeatureContext, InternalError, InvalidParamsError, Language, MEEGO_BIZ_HUB, Modal, ModalConfirmOptions, ModalOpenOptions, Navigation, NoAuthError, NodeStatus, NotFoundError, NotSupportedError, Off, OutOfLimitError, Page, PageFeatureContext, RichTextEditor, RichTextEditorContent, RichTextEditorOptions, Role, RoleOwners, SDKClient, SDKClientOptions, ScheduleCompValidateMsg, ScheduleCompValueType, ScheduleUnitButtonFeatureContext, Shared, Space, Storage, SubFieldType, Tab, TabFeatureContext, Toast, ToastOptions, User, UserInfo, Utils, View, ViewFeatureContext, WbsStatus, WorkItem, WorkItemButtonFeatureContext, WorkItemCreateFormPreset, WorkItemFinder, WorkItemFinderOptions, WorkObject, SDKClient as default, unwatch };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lark-project/js-sdk",
3
- "version": "2.0.16-dev.0",
3
+ "version": "2.0.16-dev.builder.1",
4
4
  "runtimeMinVersions": {
5
5
  "web": "2.1.0",
6
6
  "mobile": "1.1.0"