realreport-designer 1.9.0-alpha.0 → 1.9.0

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.
@@ -87,7 +87,7 @@ declare class AssetManager extends EventAware {
87
87
  addPalette(group: string | AssetGroup, name: string, paletteData: string): ColorPaletteAsset;
88
88
  addCharitst(group: string | AssetGroup, name: string, themeData: string): ChartistThemeAsset;
89
89
  addHighchart(group: string | AssetGroup, name: string, themeData: string): HighchartThemeAsset;
90
- getTree(root?: string): object;
90
+ getTree(root?: string): TreeItemSource;
91
91
  private $_parseTree;
92
92
  getValidName(prefix: string): string;
93
93
  isValidName(name: string): boolean;
@@ -1967,6 +1967,38 @@ declare class FloatingContainer extends ReportGroupItem {
1967
1967
  canAdd(item: ReportItem): boolean;
1968
1968
  }
1969
1969
 
1970
+ declare type FontFormat = 'truetype' | 'opentype' | 'woff';
1971
+
1972
+ /**
1973
+ * FontManager 폰트 관련 리소스 관리
1974
+ * 폰트 관련 리소스를 base64로 보관하고 가져다 사용할 수 있도록 작성
1975
+ */
1976
+ declare class FontManager extends EventAware {
1977
+ static readonly FONT_ADDED = "onFontManagerFontAdded";
1978
+ static readonly FONT_REMOVED = "onFontManagerFontRemoved";
1979
+ private _fontSources;
1980
+ constructor();
1981
+ protected _doDispose(): void;
1982
+ get fonts(): FontSource[];
1983
+ get fontNames(): string[];
1984
+ registerFonts(fontSources?: UserFontSource[]): Promise<void>;
1985
+ getFonts(name: string, weight?: FontWeight): FontSource[];
1986
+ getFontsByWeight(weight: FontWeight): FontSource[];
1987
+ private $_convertFontWeight;
1988
+ private $_convertFontType;
1989
+ private $_fireFontAdded;
1990
+ private $_fireFontRemoved;
1991
+ }
1992
+
1993
+ declare type FontSource = {
1994
+ name: string;
1995
+ source: string;
1996
+ fontWeight: FontWeight;
1997
+ format: FontFormat;
1998
+ };
1999
+
2000
+ declare type FontWeight = 'normal' | 'bold';
2001
+
1970
2002
  declare abstract class HichartAxis extends ChartObject$1<HichartItem> {
1971
2003
  static readonly PROP_TITLE = "title";
1972
2004
  static readonly PROP_CATEGORIES = "categories";
@@ -2616,6 +2648,46 @@ declare class HtmlItem extends ReportItem {
2616
2648
 
2617
2649
  /* Excluded from this release type: HtmlItemElement */
2618
2650
 
2651
+ /**
2652
+ * i18n 다국어 리소스 관리
2653
+ */
2654
+ declare class I18nManager extends EventAware {
2655
+ static readonly LANGUAGE_ADDED = "onI18nManagerLanguageAdded";
2656
+ static readonly LANGUAGE_REMOVED = "onI18nManagerLanguageRemoved";
2657
+ static readonly FIELD_ADDED = "onI18nManagerFieldAdded";
2658
+ static readonly FIELD_REMOVED = "onI18nManagerFieldRemoved";
2659
+ static readonly DEFAULT_LANGUAGE_CHANGED = "onI18nManagerDefaultLanguageChanged";
2660
+ static readonly LANGUAGE_DOMAINS: LanguageCode[];
2661
+ private _languages;
2662
+ private _defaultLanguage;
2663
+ private _fields;
2664
+ private _languageMap;
2665
+ private _commands;
2666
+ constructor(commands: EditCommandStack);
2667
+ protected _doDispose(): void;
2668
+ get languages(): string[];
2669
+ get fields(): string[];
2670
+ get defaultLanguage(): string;
2671
+ set defaultLanguage(language: string);
2672
+ clear(): I18nManager;
2673
+ load(source: any, clear?: boolean): I18nManager;
2674
+ save(target: object): void;
2675
+ addLanguage(language: string): void;
2676
+ removeLanguage(language: string): void;
2677
+ addField(field: string): void;
2678
+ updateField(oldField: string, newField: string): void;
2679
+ removeField(field: string): void;
2680
+ getValue(language: string, field: string): string;
2681
+ updateValue(language: string, field: string, value: string): void;
2682
+ getLanguageMap(language: string): LanguageItem[];
2683
+ getNextFieldName(prefix?: string): string;
2684
+ private $_fireLanguageAdded;
2685
+ private $_fireLanguageRemoved;
2686
+ private $_fireFieldAdded;
2687
+ private $_fireFieldRemoved;
2688
+ private $_fireDefaultLanguageChanged;
2689
+ }
2690
+
2619
2691
  declare interface IBandData extends IReportData {
2620
2692
  fieldCount: number;
2621
2693
  rowCount: number;
@@ -2861,7 +2933,7 @@ declare interface IReportData {
2861
2933
 
2862
2934
  declare interface IReportDataField {
2863
2935
  fieldName: string;
2864
- dataType: "text" | "number" | "bool" | "datetime";
2936
+ dataType: 'text' | 'number' | 'bool' | 'datetime';
2865
2937
  source?: string;
2866
2938
  description?: string;
2867
2939
  sample?: any;
@@ -2880,7 +2952,7 @@ declare interface IReportDataInfo {
2880
2952
 
2881
2953
  declare interface IReportDataLink {
2882
2954
  url: string;
2883
- method?: 'GET' | 'POST' | 'PUT' | 'DELETE';
2955
+ method?: 'GET' | 'POST' | 'PUT';
2884
2956
  format?: ReportDataLinkFormat;
2885
2957
  /**
2886
2958
  * format이 json일 때 value 배열 위치.
@@ -2892,6 +2964,7 @@ declare interface IReportDataLink {
2892
2964
  headers?: {
2893
2965
  [name: string]: string;
2894
2966
  };
2967
+ body?: string;
2895
2968
  }
2896
2969
 
2897
2970
  declare interface IReportDataProvider {
@@ -2934,7 +3007,7 @@ declare interface IReportDesignerOptions {
2934
3007
  /** callbacks */
2935
3008
  getReportListCallback?: () => Promise<IReportInfo[]>;
2936
3009
  getReportCallback?: (reportId: string) => Promise<IReportBody>;
2937
- saveReportCallback?: (report: Report_2, isNew: boolean) => Promise<string | null>;
3010
+ saveReportCallback?: (report: Report_2, reportId: string) => Promise<SaveCallbackResponse | null>;
2938
3011
  getOptionsCallback?: () => Promise<Partial<IReportDesignerOptions>>;
2939
3012
  saveOptionsCallback?: (options: IReportDesignerOptions) => Promise<string | null>;
2940
3013
  }
@@ -2974,8 +3047,8 @@ declare interface IReportServer {
2974
3047
  getData?(id: string): Promise<IReportDataInfo>;
2975
3048
  getAssetGroups(parent?: string): Promise<string[]>;
2976
3049
  getAssetList(group: string): Promise<IReportAssetItem[]>;
2977
- getOptions(): Promise<Partial<IReportDesignerOptions>>;
2978
- saveOptions: (options: IReportDesignerOptions) => Promise<string>;
3050
+ getOptions?(): Promise<Partial<IReportDesignerOptions>>;
3051
+ saveOptions?: (options: IReportDesignerOptions) => Promise<string>;
2979
3052
  }
2980
3053
 
2981
3054
  declare interface ISelectionSource {
@@ -2991,10 +3064,26 @@ declare interface ISides {
2991
3064
  }
2992
3065
 
2993
3066
  declare interface ISimpleData extends IReportData {
3067
+ getField(index: number): ISimpleDataField;
3068
+ getFields(): ISimpleDataField[];
3069
+ getFieldByName(fieldName: string): ISimpleDataField;
2994
3070
  getValues(): any;
2995
3071
  getSaveValues(): any;
2996
3072
  }
2997
3073
 
3074
+ declare interface ISimpleDataField {
3075
+ fieldName: string;
3076
+ dataType?: 'string' | 'number' | 'boolean' | 'array' | 'object';
3077
+ source?: string;
3078
+ expression?: string;
3079
+ format?: string;
3080
+ description?: string;
3081
+ sample?: any;
3082
+ dateReader?: DatetimeReader;
3083
+ width?: number;
3084
+ children?: any;
3085
+ }
3086
+
2998
3087
  declare interface ISimpleGroupPrintInfo extends IGroupPrintInfo {
2999
3088
  view: SimpleBandGroupSectionElement<SimpleBandRowGroupHeader | SimpleBandRowGroupFooter>;
3000
3089
  }
@@ -3004,6 +3093,293 @@ declare interface ISize {
3004
3093
  height: number;
3005
3094
  }
3006
3095
 
3096
+ declare const ISO_639_LANGUAGES: {
3097
+ readonly aa: "Afar";
3098
+ readonly ab: "Abkhazian";
3099
+ readonly ae: "Avestan";
3100
+ readonly af: "Afrikaans";
3101
+ readonly ak: "Akan";
3102
+ readonly am: "Amharic";
3103
+ readonly an: "Aragonese";
3104
+ readonly ar: "Arabic";
3105
+ readonly 'ar-ae': "Arabic (U.A.E.)";
3106
+ readonly 'ar-bh': "Arabic (Bahrain)";
3107
+ readonly 'ar-dz': "Arabic (Algeria)";
3108
+ readonly 'ar-eg': "Arabic (Egypt)";
3109
+ readonly 'ar-iq': "Arabic (Iraq)";
3110
+ readonly 'ar-jo': "Arabic (Jordan)";
3111
+ readonly 'ar-kw': "Arabic (Kuwait)";
3112
+ readonly 'ar-lb': "Arabic (Lebanon)";
3113
+ readonly 'ar-ly': "Arabic (Libya)";
3114
+ readonly 'ar-ma': "Arabic (Morocco)";
3115
+ readonly 'ar-om': "Arabic (Oman)";
3116
+ readonly 'ar-qa': "Arabic (Qatar)";
3117
+ readonly 'ar-sa': "Arabic (Saudi Arabia)";
3118
+ readonly 'ar-sy': "Arabic (Syria)";
3119
+ readonly 'ar-tn': "Arabic (Tunisia)";
3120
+ readonly 'ar-ye': "Arabic (Yemen)";
3121
+ readonly as: "Assamese";
3122
+ readonly av: "Avaric";
3123
+ readonly ay: "Aymara";
3124
+ readonly az: "Azeri";
3125
+ readonly ba: "Bashkir";
3126
+ readonly be: "Belarusian";
3127
+ readonly bg: "Bulgarian";
3128
+ readonly bh: "Bihari";
3129
+ readonly bi: "Bislama";
3130
+ readonly bm: "Bambara";
3131
+ readonly bn: "Bengali";
3132
+ readonly bo: "Tibetan";
3133
+ readonly br: "Breton";
3134
+ readonly bs: "Bosnian";
3135
+ readonly ca: "Catalan";
3136
+ readonly ce: "Chechen";
3137
+ readonly ch: "Chamorro";
3138
+ readonly co: "Corsican";
3139
+ readonly cr: "Cree";
3140
+ readonly cs: "Czech";
3141
+ readonly cu: "Church Slavonic";
3142
+ readonly cv: "Chuvash";
3143
+ readonly cy: "Welsh";
3144
+ readonly da: "Danish";
3145
+ readonly de: "German";
3146
+ readonly 'de-at': "German (Austria)";
3147
+ readonly 'de-ch': "German (Switzerland)";
3148
+ readonly 'de-de': "German (Germany)";
3149
+ readonly 'de-li': "German (Liechtenstein)";
3150
+ readonly 'de-lu': "German (Luxembourg)";
3151
+ readonly div: "Divehi";
3152
+ readonly dv: "Divehi";
3153
+ readonly dz: "Bhutani";
3154
+ readonly ee: "Ewe";
3155
+ readonly el: "Greek";
3156
+ readonly en: "English";
3157
+ readonly 'en-au': "English (Australia)";
3158
+ readonly 'en-bz': "English (Belize)";
3159
+ readonly 'en-ca': "English (Canada)";
3160
+ readonly 'en-cb': "English (Caribbean)";
3161
+ readonly 'en-gb': "English (United Kingdom)";
3162
+ readonly 'en-ie': "English (Ireland)";
3163
+ readonly 'en-jm': "English (Jamaica)";
3164
+ readonly 'en-nz': "English (New Zealand)";
3165
+ readonly 'en-ph': "English (Philippines)";
3166
+ readonly 'en-tt': "English (Trinidad and Tobago)";
3167
+ readonly 'en-us': "English (United States)";
3168
+ readonly 'en-za': "English (South Africa)";
3169
+ readonly 'en-zw': "English (Zimbabwe)";
3170
+ readonly eo: "Esperanto";
3171
+ readonly es: "Spanish";
3172
+ readonly 'es-ar': "Spanish (Argentina)";
3173
+ readonly 'es-bo': "Spanish (Bolivia)";
3174
+ readonly 'es-cl': "Spanish (Chile)";
3175
+ readonly 'es-co': "Spanish (Colombia)";
3176
+ readonly 'es-cr': "Spanish (Costa Rica)";
3177
+ readonly 'es-do': "Spanish (Dominican Republic)";
3178
+ readonly 'es-ec': "Spanish (Ecuador)";
3179
+ readonly 'es-es': "Spanish (Spain)";
3180
+ readonly 'es-gt': "Spanish (Guatemala)";
3181
+ readonly 'es-hn': "Spanish (Honduras)";
3182
+ readonly 'es-mx': "Spanish (Mexico)";
3183
+ readonly 'es-ni': "Spanish (Nicaragua)";
3184
+ readonly 'es-pa': "Spanish (Panama)";
3185
+ readonly 'es-pe': "Spanish (Peru)";
3186
+ readonly 'es-pr': "Spanish (Puerto Rico)";
3187
+ readonly 'es-py': "Spanish (Paraguay)";
3188
+ readonly 'es-sv': "Spanish (El Salvador)";
3189
+ readonly 'es-us': "Spanish (United States)";
3190
+ readonly 'es-uy': "Spanish (Uruguay)";
3191
+ readonly 'es-ve': "Spanish (Venezuela)";
3192
+ readonly et: "Estonian";
3193
+ readonly eu: "Basque";
3194
+ readonly fa: "Farsi";
3195
+ readonly ff: "Fulah";
3196
+ readonly fi: "Finnish";
3197
+ readonly fj: "Fiji";
3198
+ readonly fo: "Faroese";
3199
+ readonly fr: "French";
3200
+ readonly 'fr-be': "French (Belgium)";
3201
+ readonly 'fr-ca': "French (Canada)";
3202
+ readonly 'fr-ch': "French (Switzerland)";
3203
+ readonly 'fr-fr': "French (France)";
3204
+ readonly 'fr-lu': "French (Luxembourg)";
3205
+ readonly 'fr-mc': "French (Monaco)";
3206
+ readonly fy: "Frisian";
3207
+ readonly ga: "Irish";
3208
+ readonly gd: "Gaelic";
3209
+ readonly gl: "Galician";
3210
+ readonly gn: "Guarani";
3211
+ readonly gu: "Gujarati";
3212
+ readonly gv: "Manx";
3213
+ readonly ha: "Hausa";
3214
+ readonly he: "Hebrew";
3215
+ readonly hi: "Hindi";
3216
+ readonly ho: "Hiri Motu";
3217
+ readonly hr: "Croatian";
3218
+ readonly 'hr-ba': "Croatian (Bosnia and Herzegovina)";
3219
+ readonly 'hr-hr': "Croatian (Croatia)";
3220
+ readonly ht: "Haitian";
3221
+ readonly hu: "Hungarian";
3222
+ readonly hy: "Armenian";
3223
+ readonly hz: "Herero";
3224
+ readonly ia: "Interlingua";
3225
+ readonly id: "Indonesian";
3226
+ readonly ie: "Interlingue";
3227
+ readonly ig: "Igbo";
3228
+ readonly ii: "Sichuan Yi";
3229
+ readonly ik: "Inupiak";
3230
+ readonly in: "Indonesian";
3231
+ readonly io: "Ido";
3232
+ readonly is: "Icelandic";
3233
+ readonly it: "Italian";
3234
+ readonly 'it-ch': "Italian (Switzerland)";
3235
+ readonly 'it-it': "Italian (Italy)";
3236
+ readonly iu: "Inuktitut";
3237
+ readonly iw: "Hebrew";
3238
+ readonly ja: "Japanese";
3239
+ readonly ji: "Yiddish";
3240
+ readonly jv: "Javanese";
3241
+ readonly jw: "Javanese";
3242
+ readonly ka: "Georgian";
3243
+ readonly kg: "Kongo";
3244
+ readonly ki: "Kikuyu";
3245
+ readonly kj: "Kuanyama";
3246
+ readonly kk: "Kazakh";
3247
+ readonly kl: "Greenlandic";
3248
+ readonly km: "Cambodian";
3249
+ readonly kn: "Kannada";
3250
+ readonly ko: "Korean";
3251
+ readonly kok: "Konkani";
3252
+ readonly kr: "Kanuri";
3253
+ readonly ks: "Kashmiri";
3254
+ readonly ku: "Kurdish";
3255
+ readonly kv: "Komi";
3256
+ readonly kw: "Cornish";
3257
+ readonly ky: "Kirghiz";
3258
+ readonly kz: "Kyrgyz";
3259
+ readonly la: "Latin";
3260
+ readonly lb: "Luxembourgish";
3261
+ readonly lg: "Ganda";
3262
+ readonly li: "Limburgan";
3263
+ readonly ln: "Lingala";
3264
+ readonly lo: "Laothian";
3265
+ readonly ls: "Slovenian";
3266
+ readonly lt: "Lithuanian";
3267
+ readonly lu: "Luba-Katanga";
3268
+ readonly lv: "Latvian";
3269
+ readonly mg: "Malagasy";
3270
+ readonly mh: "Marshallese";
3271
+ readonly mi: "Maori";
3272
+ readonly mk: "FYRO Macedonian";
3273
+ readonly ml: "Malayalam";
3274
+ readonly mn: "Mongolian";
3275
+ readonly mo: "Moldavian";
3276
+ readonly mr: "Marathi";
3277
+ readonly ms: "Malay";
3278
+ readonly 'ms-bn': "Malay (Brunei Darussalam)";
3279
+ readonly 'ms-my': "Malay (Malaysia)";
3280
+ readonly mt: "Maltese";
3281
+ readonly my: "Burmese";
3282
+ readonly na: "Nauru";
3283
+ readonly nb: "Norwegian (Bokmal)";
3284
+ readonly nd: "North Ndebele";
3285
+ readonly ne: "Nepali (India)";
3286
+ readonly ng: "Ndonga";
3287
+ readonly nl: "Dutch";
3288
+ readonly 'nl-be': "Dutch (Belgium)";
3289
+ readonly 'nl-nl': "Dutch (Netherlands)";
3290
+ readonly nn: "Norwegian (Nynorsk)";
3291
+ readonly no: "Norwegian";
3292
+ readonly nr: "South Ndebele";
3293
+ readonly ns: "Northern Sotho";
3294
+ readonly nv: "Navajo";
3295
+ readonly ny: "Chichewa";
3296
+ readonly oc: "Occitan";
3297
+ readonly oj: "Ojibwa";
3298
+ readonly om: "(Afan)/Oromoor/Oriya";
3299
+ readonly or: "Oriya";
3300
+ readonly os: "Ossetian";
3301
+ readonly pa: "Punjabi";
3302
+ readonly pi: "Pali";
3303
+ readonly pl: "Polish";
3304
+ readonly ps: "Pashto/Pushto";
3305
+ readonly pt: "Portuguese";
3306
+ readonly 'pt-br': "Portuguese (Brazil)";
3307
+ readonly 'pt-pt': "Portuguese (Portugal)";
3308
+ readonly qu: "Quechua";
3309
+ readonly 'qu-bo': "Quechua (Bolivia)";
3310
+ readonly 'qu-ec': "Quechua (Ecuador)";
3311
+ readonly 'qu-pe': "Quechua (Peru)";
3312
+ readonly rm: "Rhaeto-Romanic";
3313
+ readonly rn: "Kirundi";
3314
+ readonly ro: "Romanian";
3315
+ readonly ru: "Russian";
3316
+ readonly rw: "Kinyarwanda";
3317
+ readonly sa: "Sanskrit";
3318
+ readonly sb: "Sorbian";
3319
+ readonly sc: "Sardinian";
3320
+ readonly sd: "Sindhi";
3321
+ readonly se: "Sami";
3322
+ readonly 'se-fi': "Sami (Finland)";
3323
+ readonly 'se-no': "Sami (Norway)";
3324
+ readonly 'se-se': "Sami (Sweden)";
3325
+ readonly sg: "Sangro";
3326
+ readonly sh: "Serbo-Croatian";
3327
+ readonly si: "Singhalese";
3328
+ readonly sk: "Slovak";
3329
+ readonly sl: "Slovenian";
3330
+ readonly sm: "Samoan";
3331
+ readonly sn: "Shona";
3332
+ readonly so: "Somali";
3333
+ readonly sq: "Albanian";
3334
+ readonly sr: "Serbian";
3335
+ readonly 'sr-ba': "Serbian (Bosnia and Herzegovina)";
3336
+ readonly 'sr-sp': "Serbian (Serbia and Montenegro)";
3337
+ readonly ss: "Siswati";
3338
+ readonly st: "Sesotho";
3339
+ readonly su: "Sundanese";
3340
+ readonly sv: "Swedish";
3341
+ readonly 'sv-fi': "Swedish (Finland)";
3342
+ readonly 'sv-se': "Swedish (Sweden)";
3343
+ readonly sw: "Swahili";
3344
+ readonly sx: "Sutu";
3345
+ readonly syr: "Syriac";
3346
+ readonly ta: "Tamil";
3347
+ readonly te: "Telugu";
3348
+ readonly tg: "Tajik";
3349
+ readonly th: "Thai";
3350
+ readonly ti: "Tigrinya";
3351
+ readonly tk: "Turkmen";
3352
+ readonly tl: "Tagalog";
3353
+ readonly tn: "Tswana";
3354
+ readonly to: "Tonga";
3355
+ readonly tr: "Turkish";
3356
+ readonly ts: "Tsonga";
3357
+ readonly tt: "Tatar";
3358
+ readonly tw: "Twi";
3359
+ readonly ty: "Tahitian";
3360
+ readonly ug: "Uighur";
3361
+ readonly uk: "Ukrainian";
3362
+ readonly ur: "Urdu";
3363
+ readonly us: "English";
3364
+ readonly uz: "Uzbek";
3365
+ readonly ve: "Venda";
3366
+ readonly vi: "Vietnamese";
3367
+ readonly vo: "Volapuk";
3368
+ readonly wa: "Walloon";
3369
+ readonly wo: "Wolof";
3370
+ readonly xh: "Xhosa";
3371
+ readonly yi: "Yiddish";
3372
+ readonly yo: "Yoruba";
3373
+ readonly za: "Zhuang";
3374
+ readonly zh: "Chinese";
3375
+ readonly 'zh-cn': "Chinese (China)";
3376
+ readonly 'zh-hk': "Chinese (Hong Kong SAR)";
3377
+ readonly 'zh-mo': "Chinese (Macau SAR)";
3378
+ readonly 'zh-sg': "Chinese (Singapore)";
3379
+ readonly 'zh-tw': "Chinese (Taiwan)";
3380
+ readonly zu: "Zulu";
3381
+ };
3382
+
3007
3383
  declare interface ITable {
3008
3384
  colCount: number;
3009
3385
  columns: TableColumnCollectionBase<ReportGroupItem, TableColumnBase>;
@@ -3021,6 +3397,13 @@ declare enum ItemMoveType {
3021
3397
  OUTER = "outer"
3022
3398
  }
3023
3399
 
3400
+ declare type LanguageCode = keyof typeof ISO_639_LANGUAGES;
3401
+
3402
+ declare type LanguageItem = {
3403
+ field: string;
3404
+ value: string;
3405
+ };
3406
+
3024
3407
  /* Excluded from this release type: LayerElement */
3025
3408
 
3026
3409
  declare abstract class LinkableReportData extends ReportData {
@@ -3029,7 +3412,9 @@ declare abstract class LinkableReportData extends ReportData {
3029
3412
  constructor(name: string, link?: IReportDataLink, dp?: IReportDataProvider);
3030
3413
  get link(): IReportDataLink;
3031
3414
  set link(value: IReportDataLink);
3415
+ get linkUrl(): IReportDataLink['url'];
3032
3416
  fetch(): Promise<void>;
3417
+ save(target: object): void;
3033
3418
  protected abstract _doDataFetched(fetchedData: unknown): void;
3034
3419
  }
3035
3420
 
@@ -3302,6 +3687,7 @@ declare class PrintContext extends Base {
3302
3687
  private _detailPage;
3303
3688
  private _compositePageCount;
3304
3689
  private _compositePage;
3690
+ private _language;
3305
3691
  detailRows: number[];
3306
3692
  noValueCallback: boolean;
3307
3693
  preview: boolean;
@@ -3411,6 +3797,11 @@ declare class PrintContext extends Base {
3411
3797
  */
3412
3798
  get compositePage(): number;
3413
3799
  get reportItemElementMap(): ReportItemElementMap;
3800
+ /**
3801
+ * language
3802
+ */
3803
+ get language(): string;
3804
+ set language(value: string);
3414
3805
  preparePrint(report?: Report_2): void;
3415
3806
  preparePage(page: number, allPage: number): void;
3416
3807
  setDetailPage(count: number, page: number): void;
@@ -3486,6 +3877,7 @@ declare enum PropCategory {
3486
3877
  BOUND = "bound",
3487
3878
  LINK = "link",
3488
3879
  EVENT = "event",
3880
+ I18N = "internationalization",
3489
3881
  SECTION = "section",
3490
3882
  EDITOR = "editor",
3491
3883
  REPORT = "report",
@@ -4312,6 +4704,11 @@ declare class Report_2 extends EventAware implements IEditCommandStackOwner, IPr
4312
4704
  static readonly DATA_FIELD_NAME_CHANGED = "onReportDataFieldNameChanged";
4313
4705
  static readonly CELL_MERGED = "onReportCellMerged";
4314
4706
  static readonly ALERT = "onReportAlert";
4707
+ static readonly LANGUAGE_ADDED = "onReportLanguageAdded";
4708
+ static readonly LANGUAGE_REMOVED = "onReportLanguageRemoved";
4709
+ static readonly LANGUAGE_FIELD_ADDED = "onReportLanguageFieldAdded";
4710
+ static readonly LANGUAGE_FIELD_REMOVED = "onReportLanguageFieldRemoved";
4711
+ static readonly DEFAULT_LANGUAGE_CHANGED = "onReportDefaultLanguageChanged";
4315
4712
  static isReportSource(source: any): boolean;
4316
4713
  private _info;
4317
4714
  private _unit;
@@ -4321,6 +4718,8 @@ declare class Report_2 extends EventAware implements IEditCommandStackOwner, IPr
4321
4718
  private _assets;
4322
4719
  private _data;
4323
4720
  private _designData;
4721
+ private _i18n;
4722
+ private _fontManager;
4324
4723
  designTag: any;
4325
4724
  models: Record<number, ReportItem>;
4326
4725
  private _designTime;
@@ -4336,6 +4735,11 @@ declare class Report_2 extends EventAware implements IEditCommandStackOwner, IPr
4336
4735
  onDesignDataManagerDataUpdated(dm: DesignDataManager, data: IReportData): void;
4337
4736
  onDesignDataManagerNameChanged(dm: DesignDataManager, data: IReportData, oldName: string): void;
4338
4737
  onDesignDataManagerFieldNameChanged(dm: DesignDataManager, data: IReportData, newName: string, oldName: string): void;
4738
+ onI18nManagerLanguageAdded(i18n: I18nManager, language: string): void;
4739
+ onI18nManagerLanguageRemoved(i18n: I18nManager, language: string): void;
4740
+ onI18nManagerFieldAdded(i18n: I18nManager, field: string): void;
4741
+ onI18nManagerFieldRemoved(i18n: I18nManager, field: string): void;
4742
+ onI18nManagerDefaultLanguageChanged(i18n: I18nManager, language: string): void;
4339
4743
  editCommandStackChanged(stack: EditCommandStack, cmd: EditCommand, undoable: boolean, redoable: boolean): void;
4340
4744
  editCommandStackDirtyChanged(stack: EditCommandStack): void;
4341
4745
  addCollectionItem(collection: IPropertySource): void;
@@ -4364,6 +4768,15 @@ declare class Report_2 extends EventAware implements IEditCommandStackOwner, IPr
4364
4768
  get data(): IReportDataProvider;
4365
4769
  /** desingData */
4366
4770
  get designData(): DesignDataManager;
4771
+ /** i18n */
4772
+ get i18n(): I18nManager;
4773
+ /** fontManager */
4774
+ get fontManager(): FontManager;
4775
+ /**
4776
+ * Setter Injection인 이유는 리소스는 외부에서 한번만 생성후에 관리한다.
4777
+ * 새로운 리포트 모델을 생성할 때 폰트관련 리소스는 외부 정보이므로 주입받아서 사용하자.
4778
+ */
4779
+ set fontManager(fontManager: FontManager);
4367
4780
  /** canUndo */
4368
4781
  get canUndo(): boolean;
4369
4782
  /** canRedo */
@@ -4519,6 +4932,16 @@ declare class Report_2 extends EventAware implements IEditCommandStackOwner, IPr
4519
4932
  }[];
4520
4933
  foldedChanged(item: ReportItem): void;
4521
4934
  isFirstPageLandscape(): boolean;
4935
+ /**
4936
+ * i18nManager command 모음
4937
+ */
4938
+ addLanguage(language: string): void;
4939
+ removeLanguage(language: string): void;
4940
+ addLanguageField(field: string): void;
4941
+ removeLanguageField(field: string): void;
4942
+ updateLanguageField(oldField: string, newField: string): void;
4943
+ getLangaugeFieldValue(language: string, field: string): string;
4944
+ updateLanguageFieldValue(language: string, field: string, value: string): void;
4522
4945
  protected _createReportRootItem(report: Report_2): ReportRootItem;
4523
4946
  protected _createReportInfo(report: Report_2): ReportInfo;
4524
4947
  protected _createReportLoader(): IReportLoader;
@@ -4530,6 +4953,7 @@ declare class Report_2 extends EventAware implements IEditCommandStackOwner, IPr
4530
4953
  private $_refreshInvalids;
4531
4954
  private $_refereshPages;
4532
4955
  private $_resetPages;
4956
+ private $_updateReportItemsLanguageField;
4533
4957
  protected onPageItemAdded(source: IEventAware, item: ReportPageItem, index: number, silent: boolean): void;
4534
4958
  protected onPageItemsAdded(source: IEventAware, items: ReportPageItem[], index: number): void;
4535
4959
  protected onPageItemRemoved(source: IEventAware, item: ReportPageItem, oldParent: ReportGroupItem): void;
@@ -4568,10 +4992,12 @@ export declare class ReportDesigner {
4568
4992
  constructor(containerId: string | HTMLDivElement, options?: ReportDesignerOptions, server?: ReportServer, licenseKey?: string);
4569
4993
  get designMode(): boolean;
4570
4994
  set designMode(value: boolean);
4995
+ set defaultFont(fontName: string);
4571
4996
  loadReport(source: any, options?: ReportOptions): void;
4572
4997
  setReportTemplates(templates: UserReportCategoryTemplate[]): Promise<void>;
4573
4998
  setDataTemplates(templates: UserDataTemplateGroup[]): Promise<void>;
4574
4999
  setAssetTemplates(templates: UserAssetTemplateGroup[]): Promise<void>;
5000
+ registerFonts(fonts: UserFontSource[], defaultFont?: string): Promise<void>;
4575
5001
  }
4576
5002
 
4577
5003
  declare interface ReportDesignerOptions {
@@ -4585,9 +5011,10 @@ declare interface ReportDesignerOptions {
4585
5011
  dragInsert?: boolean;
4586
5012
  getReportListCallback?: () => Promise<IReportInfo[]>;
4587
5013
  getReportCallback?: (reportId: string) => Promise<IReportBody>;
4588
- saveReportCallback?: (report: Report_2, isNew: boolean) => Promise<string | null>;
4589
- getOptionsCallback?: () => Promise<Partial<ReportDesignerOptions>>;
4590
- saveOptionsCallback?: (options: ReportDesignerOptions) => Promise<string | null>;
5014
+ saveReportCallback?: (report: Report_2, reportId: string) => Promise<{
5015
+ reportId: string;
5016
+ message: any;
5017
+ } | null>;
4591
5018
  }
4592
5019
 
4593
5020
  /* Excluded from this release type: ReportElement */
@@ -4884,6 +5311,7 @@ declare abstract class ReportItem extends ReportPageItem {
4884
5311
  getPlaceHolder(prop: IPropInfo): string;
4885
5312
  /* Excluded from this release type: getData */
4886
5313
  /* Excluded from this release type: getDataFieldNames */
5314
+ getLanguageFields(): string[];
4887
5315
  getPropDomain(prop: IPropInfo): any[];
4888
5316
  getProperty(prop: string): any;
4889
5317
  setProperty(prop: string, value: any): void;
@@ -5174,6 +5602,8 @@ declare abstract class ReportItem extends ReportPageItem {
5174
5602
  canFold(): boolean;
5175
5603
  fold(): boolean;
5176
5604
  unfold(): boolean;
5605
+ isI18nFieldValid(): boolean;
5606
+ getLanguageFieldValue(language: string, field: string): string;
5177
5607
  protected _foldedChanged(): void;
5178
5608
  get marqueeParent(): ReportItem;
5179
5609
  get printable(): boolean;
@@ -5215,6 +5645,7 @@ declare abstract class ReportItem extends ReportPageItem {
5215
5645
  protected _doAfterSave(target: object): void;
5216
5646
  protected _doPrepareLayout(printing: boolean): void;
5217
5647
  protected _doPreparePrint(ctx: PrintContext): void;
5648
+ protected _isI18nFieldExist(): boolean;
5218
5649
  }
5219
5650
 
5220
5651
  declare abstract class ReportItemCollection<T extends ReportPageItem> extends ReportPageItem {
@@ -5325,6 +5756,7 @@ declare class ReportItemRegistry extends Base {
5325
5756
  constructor();
5326
5757
  add(item: ReportItem): void;
5327
5758
  remove(item: ReportItem | ReportPageItem): void;
5759
+ getItems(type?: ReportItemType): ReportItem[];
5328
5760
  getItemCount(type: ReportItemType): number;
5329
5761
  /**
5330
5762
  * 가장 최상위에 있는 밴드의 이름들을 반환해주기 위해 작성
@@ -5782,8 +6214,6 @@ declare interface ReportServer {
5782
6214
  getData?(id: string): Promise<IReportDataInfo>;
5783
6215
  getAssetGroups(parent?: string): Promise<string[]>;
5784
6216
  getAssetList(group: string): Promise<IReportAssetItem[]>;
5785
- getOptions(): Promise<Partial<ReportDesignerOptions>>;
5786
- saveOptions: (options: ReportDesignerOptions) => Promise<string>;
5787
6217
  }
5788
6218
 
5789
6219
  declare type ReportSource = Record<string, unknown> | Record<string, unknown>[];
@@ -5838,6 +6268,11 @@ declare class RowCollection {
5838
6268
  private $_collectSummaryRows;
5839
6269
  }
5840
6270
 
6271
+ declare type SaveCallbackResponse = {
6272
+ reportId: string;
6273
+ message?: string;
6274
+ };
6275
+
5841
6276
  /* Excluded from this release type: SectionElement */
5842
6277
 
5843
6278
  declare enum SectionInherit {
@@ -6061,19 +6496,47 @@ declare abstract class SimpleBandSection extends StackContainer {
6061
6496
  */
6062
6497
  declare class SimpleData extends LinkableReportData implements ISimpleData {
6063
6498
  private _isObj;
6064
- private _values;
6065
- constructor(name: string, values: any, link?: IReportDataLink);
6499
+ private _fields;
6500
+ private _linkedValues;
6501
+ private _embeddedValues;
6502
+ private get _values();
6503
+ private set _values(value);
6504
+ constructor(name: string, values: SimpleDataValueType, link?: IReportDataLink, fields?: ISimpleDataField[], dp?: IReportDataProvider);
6066
6505
  /**
6067
6506
  * TODO: array index
6068
6507
  */
6069
6508
  getValue(path?: string): any;
6070
6509
  getValues(): any;
6071
- get sample(): any;
6510
+ get sample(): SimpleDataValueType;
6511
+ get rowCount(): number;
6512
+ get fields(): ISimpleDataField[];
6513
+ get fieldCount(): number;
6072
6514
  setSample(values: any): void;
6073
6515
  getFieldNames(): string[];
6516
+ getFields(): ISimpleDataField[];
6517
+ getField(index: number): ISimpleDataField;
6518
+ getFieldByName(fieldName: string): ISimpleDataField;
6519
+ getFieldIndex(field: string): number;
6520
+ indexOfField(field: ISimpleDataField): number;
6521
+ setField(index: number, field: ISimpleDataField): void;
6522
+ getSaveFields(): ISimpleDataField[];
6523
+ getNextFieldName(prefix?: string): string;
6524
+ addField(index: number, field: ISimpleDataField): boolean;
6525
+ removeField(field: ISimpleDataField): boolean;
6526
+ dateToStr(field: ISimpleDataField, v: Date): string;
6527
+ /**
6528
+ * 특정 모드의 데이터를 일회성으로 조작하기 위한 편의성 메서드 (callback 실행 후 모드는 원복됨)
6529
+ */
6530
+ runInMode(mode: LinkableReportData['mode'], callback: (() => void) | Promise<void>): void;
6531
+ readValue(field: ISimpleDataField, value: any): any;
6074
6532
  getSaveType(): string;
6075
6533
  getSaveValues(): any;
6076
6534
  protected _doDataFetched(fetchedData: unknown): void;
6535
+ setSource(source: SimpleDataValueType): void;
6536
+ private $_isSimpleValueType;
6537
+ private $_parseValue;
6538
+ private $_createField;
6539
+ private $_createFields;
6077
6540
  }
6078
6541
 
6079
6542
  declare interface SimpleDataTemplate extends IDataTemplate {
@@ -6081,6 +6544,10 @@ declare interface SimpleDataTemplate extends IDataTemplate {
6081
6544
  template: SimpleTemplate;
6082
6545
  }
6083
6546
 
6547
+ declare type SimpleDataValueType = {
6548
+ [key: string]: any;
6549
+ };
6550
+
6084
6551
  declare interface SimpleTemplate {
6085
6552
  [key: string]: any;
6086
6553
  }
@@ -7139,6 +7606,21 @@ declare abstract class TextItemBase extends ReportItem {
7139
7606
 
7140
7607
  /* Excluded from this release type: TextItemElementBase */
7141
7608
 
7609
+ declare type TreeItemIconType = 'group' | 'report' | 'asset' | 'favorite' | 'bandData' | 'simpleData' | 'language';
7610
+
7611
+ declare type TreeItemSource = {
7612
+ name: string;
7613
+ label?: string;
7614
+ editable?: boolean;
7615
+ expandable?: boolean;
7616
+ loadable?: boolean;
7617
+ tag?: any;
7618
+ value?: string;
7619
+ type?: string;
7620
+ iconType?: TreeItemIconType;
7621
+ children?: TreeItemSource[];
7622
+ };
7623
+
7142
7624
  /* Excluded from this release type: UIContainer */
7143
7625
 
7144
7626
  /* Excluded from this release type: UIDragTracker */
@@ -7228,6 +7710,12 @@ declare interface UserDataTemplateItem {
7228
7710
  template?: SimpleDataTemplate | BandDataTemplate;
7229
7711
  }
7230
7712
 
7713
+ declare type UserFontSource = {
7714
+ name: string;
7715
+ source: string;
7716
+ fontWeight: FontWeight;
7717
+ };
7718
+
7231
7719
  export declare interface UserReportCategoryTemplate {
7232
7720
  category: string;
7233
7721
  templates: UserReportTemplate[];