@acorex/platform 20.3.0-next.2 → 20.3.0-next.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acorex/platform",
3
- "version": "20.3.0-next.2",
3
+ "version": "20.3.0-next.4",
4
4
  "peerDependencies": {
5
5
  "@acorex/styles": ">=20.0.0",
6
6
  "@acorex/core": ">=20.0.0",
@@ -50,14 +50,14 @@
50
50
  "types": "./runtime/index.d.ts",
51
51
  "default": "./fesm2022/acorex-platform-runtime.mjs"
52
52
  },
53
- "./workflow": {
54
- "types": "./workflow/index.d.ts",
55
- "default": "./fesm2022/acorex-platform-workflow.mjs"
56
- },
57
53
  "./widgets": {
58
54
  "types": "./widgets/index.d.ts",
59
55
  "default": "./fesm2022/acorex-platform-widgets.mjs"
60
56
  },
57
+ "./workflow": {
58
+ "types": "./workflow/index.d.ts",
59
+ "default": "./fesm2022/acorex-platform-workflow.mjs"
60
+ },
61
61
  "./layout/builder": {
62
62
  "types": "./layout/builder/index.d.ts",
63
63
  "default": "./fesm2022/acorex-platform-layout-builder.mjs"
@@ -1,7 +1,7 @@
1
1
  import * as i1 from '@acorex/platform/layout/builder';
2
2
  import { AXPWidgetPropertyGroup, AXPWidgetProperty, AXPLayoutBaseWidgetComponent, AXPLayoutElementAPI, AXPWidgetConfig, AXPValueWidgetComponent, AXPColumnWidgetComponent, AXPDataListWidgetComponent, AXPWidgetNode, AXPBlockBaseLayoutWidgetComponent, AXPFlexBaseLayoutWidgetComponent, AXPFlexItemBaseLayoutWidgetComponent, AXPGridBoxString, AXPGridBreakpointValues, AXPBreakpoints, AXPBorderBoxString, AXPPropertyEditorSideValues, AXPPropertyEditorCornerValues, AXPBorderBox, AXPFlexBoxString, AXPGridItemBoxString, AXPSpacingBox, AXPSpacingBoxString } from '@acorex/platform/layout/builder';
3
3
  import * as _angular_core from '@angular/core';
4
- import { EventEmitter, Signal, InjectionToken, OnInit, WritableSignal, OnDestroy, ElementRef, ChangeDetectorRef } from '@angular/core';
4
+ import { EventEmitter, Signal, InjectionToken, OnInit, OnDestroy, WritableSignal, ElementRef, ChangeDetectorRef } from '@angular/core';
5
5
  import { AXStyleColorType, AXStyleLookType, AXClickEvent, AXDataSource, AXValueChangedEvent, AXDataSourceFilterOption, AXDirection, AXButtonClickEvent } from '@acorex/cdk/common';
6
6
  import * as _acorex_platform_core from '@acorex/platform/core';
7
7
  import { AXPExpression, AXPValidationRule, AXPStringValidationRules, AXPFileListItem, AXPExpressionEvaluatorService } from '@acorex/platform/core';
@@ -11,6 +11,7 @@ import { AXTranslationService } from '@acorex/core/translation';
11
11
  import { AXNumberFormatterOptions } from '@acorex/core/format';
12
12
  import { AXSelectionListLook } from '@acorex/components/selection-list';
13
13
  import { AXFileService } from '@acorex/core/file';
14
+ import { AXPCommand } from '@acorex/platform/runtime';
14
15
  import { AXMediaViewerData } from '@acorex/components/media-viewer';
15
16
  import { AXBasePageComponent } from '@acorex/components/page';
16
17
  import * as _acorex_components_button from '@acorex/components/button';
@@ -1182,10 +1183,7 @@ declare class AXPFileUploaderWidgetEditComponent extends AXPValueWidgetComponent
1182
1183
  /**
1183
1184
  * Handle file rename action
1184
1185
  */
1185
- handleFileRename(data: {
1186
- file: AXPFileListItem;
1187
- newName: string;
1188
- }): void;
1186
+ handleFileRename(file: AXPFileListItem): void;
1189
1187
  clear(): void;
1190
1188
  private readonly capabilities;
1191
1189
  private get __class();
@@ -1227,6 +1225,73 @@ declare class AXPFileUploaderWidgetService {
1227
1225
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPFileUploaderWidgetService>;
1228
1226
  }
1229
1227
 
1228
+ declare class AXPEditFileUploaderCommand implements AXPCommand<{
1229
+ file: AXPFileListItem;
1230
+ plugins?: {
1231
+ name: string;
1232
+ options?: unknown;
1233
+ }[];
1234
+ excludePlugins?: string[];
1235
+ }, AXPFileListItem> {
1236
+ private readonly dialogService;
1237
+ private readonly translationService;
1238
+ private readonly hooks;
1239
+ execute(input: {
1240
+ file: AXPFileListItem;
1241
+ plugins?: {
1242
+ name: string;
1243
+ options?: unknown;
1244
+ }[];
1245
+ excludePlugins?: string[];
1246
+ }): Promise<AXPFileListItem>;
1247
+ private showEditDialog;
1248
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPEditFileUploaderCommand, never>;
1249
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXPEditFileUploaderCommand>;
1250
+ }
1251
+
1252
+ declare class AXPFileListComponent implements OnInit, OnDestroy {
1253
+ private fileTypeService;
1254
+ private fileStorageService;
1255
+ private popupService;
1256
+ private commandExecutor;
1257
+ isLoading: _angular_core.WritableSignal<boolean>;
1258
+ private fileTypes;
1259
+ onRemove: _angular_core.OutputEmitterRef<AXPFileListItem>;
1260
+ onRevert: _angular_core.OutputEmitterRef<AXPFileListItem>;
1261
+ onRename: _angular_core.OutputEmitterRef<AXPFileListItem>;
1262
+ readonly: _angular_core.InputSignal<boolean>;
1263
+ fileEditable: _angular_core.InputSignal<boolean>;
1264
+ files: _angular_core.InputSignal<AXPFileListItem[]>;
1265
+ plugins: _angular_core.InputSignal<{
1266
+ name: string;
1267
+ options?: unknown;
1268
+ }[] | undefined>;
1269
+ excludePlugins: _angular_core.InputSignal<string[] | undefined>;
1270
+ /**
1271
+ * All files should be displayed, even those with `deleted` status.
1272
+ * The template will handle the visual differences based on the status.
1273
+ */
1274
+ displayFiles: _angular_core.Signal<AXPFileListItem[]>;
1275
+ ngOnInit(): Promise<void>;
1276
+ protected getFileInfo(fileName: string): {
1277
+ icon: string;
1278
+ type: string;
1279
+ };
1280
+ handleFileDownload(file: AXPFileListItem): Promise<void>;
1281
+ handleFileRemove(file: AXPFileListItem): Promise<void>;
1282
+ /**
1283
+ * Handle revert action – emit the file so parent components can update the status.
1284
+ */
1285
+ handleFileRevert(file: AXPFileListItem): void;
1286
+ /**
1287
+ * Handle file edit action – open rename popup
1288
+ */
1289
+ handleFileEdit(file: AXPFileListItem): Promise<void>;
1290
+ ngOnDestroy(): void;
1291
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXPFileListComponent, never>;
1292
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXPFileListComponent, "axp-file-list", never, { "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "fileEditable": { "alias": "fileEditable"; "required": false; "isSignal": true; }; "files": { "alias": "files"; "required": false; "isSignal": true; }; "plugins": { "alias": "plugins"; "required": false; "isSignal": true; }; "excludePlugins": { "alias": "excludePlugins"; "required": false; "isSignal": true; }; }, { "onRemove": "onRemove"; "onRevert": "onRevert"; "onRename": "onRename"; }, never, never, true, never>;
1293
+ }
1294
+
1230
1295
  declare class AXPGalleryWidgetEditComponent extends AXPValueWidgetComponent<any> {
1231
1296
  protected thumbnail: _angular_core.Signal<boolean>;
1232
1297
  protected header: _angular_core.Signal<boolean>;
@@ -2325,5 +2390,5 @@ declare class AXPWidgetsModule {
2325
2390
  static ɵinj: _angular_core.ɵɵInjectorDeclaration<AXPWidgetsModule>;
2326
2391
  }
2327
2392
 
2328
- export { AXPAdvancedGridItemWidget, AXPAdvancedGridItemWidgetDesignerComponent, AXPAdvancedGridItemWidgetPrintComponent, AXPAdvancedGridItemWidgetViewComponent, AXPAdvancedGridOptionsWidget, AXPAdvancedGridOptionsWidgetEditComponent, AXPAdvancedGridWidget, AXPAdvancedGridWidgetDesignerComponent, AXPAdvancedGridWidgetViewComponent, AXPAvatarWidget, AXPAvatarWidgetColumnComponent, AXPAvatarWidgetDesignerComponent, AXPAvatarWidgetEditComponent, AXPAvatarWidgetPrintComponent, AXPAvatarWidgetViewComponent, AXPBetweenExpressionValidationWidget, AXPBetweenValidationWidgetEditComponent, AXPBlockWidget, AXPBlockWidgetDesignerComponent, AXPBlockWidgetViewComponent, AXPBorderWidget, AXPBorderWidgetEditComponent, AXPButtonWidget, AXPButtonWidgetViewComponent, AXPCallbackValidationWidget, AXPCallbackValidationWidgetEditComponent, AXPCheckBoxWidget, AXPCheckBoxWidgetEditComponent, AXPContactWidget, AXPContactWidgetColumnComponent, AXPContactWidgetEditComponent, AXPContactWidgetViewComponent, AXPDateTimeBoxWidget, AXPDateTimeBoxWidgetColumnComponent, AXPDateTimeBoxWidgetEditComponent, AXPDateTimeBoxWidgetPrintComponent, AXPDateTimeBoxWidgetViewComponent, AXPDirectionWidget, AXPDirectionWidgetEditComponent, AXPEmailBoxWidget, AXPEmailBoxWidgetColumnComponent, AXPEmailBoxWidgetEditComponent, AXPEmailBoxWidgetFilterComponent, AXPEmailBoxWidgetPrintComponent, AXPEmailBoxWidgetViewComponent, AXPEqualValidationWidget, AXPEqualValidationWidgetEditComponent, AXPExtraPropertiesSchemaWidget, AXPExtraPropertiesValuesWidget, AXPExtraPropertiesWidget, AXPFileUploaderWidget, AXPFileUploaderWidgetColumnComponent, AXPFileUploaderWidgetEditComponent, AXPFileUploaderWidgetPrintComponent, AXPFileUploaderWidgetService, AXPFileUploaderWidgetViewComponent, AXPFlexItemOptionsWidget, AXPFlexItemOptionsWidgetEditComponent, AXPFlexItemWidget, AXPFlexItemWidgetDesignerComponent, AXPFlexItemWidgetViewComponent, AXPFlexOptionsWidget, AXPFlexOptionsWidgetEditComponent, AXPFlexWidget, AXPFlexWidgetDesignerComponent, AXPFlexWidgetViewComponent, AXPGalleryWidget, AXPGalleryWidgetEditComponent, AXPGalleryWidgetPrintComponent, AXPGalleryWidgetViewComponent, AXPGreaterThanExpressionValidationWidget, AXPGreaterThanValidationWidgetEditComponent, AXPGridItemOptionsWidget, AXPGridItemOptionsWidgetEditComponent, AXPGridOptionsWidget, AXPGridOptionsWidgetEditComponent, AXPImageMarkerPopupComponent, AXPImageMarkerWidget, AXPImageMarkerWidgetColumnComponent, AXPImageMarkerWidgetEditComponent, AXPImageMarkerWidgetViewComponent, AXPLargeTextWidget, AXPLargeTextWidgetColumnComponent, AXPLargeTextWidgetEditComponent, AXPLargeTextWidgetFilterComponent, AXPLargeTextWidgetPrintComponent, AXPLargeTextWidgetViewComponent, AXPLessThanExpressionValidationWidget, AXPLessThanValidationWidgetEditComponent, AXPLinkWidget, AXPLinkWidgetColumnComponent, AXPLinkWidgetEditComponent, AXPLinkWidgetFilterComponent, AXPLinkWidgetPrintComponent, AXPLinkWidgetViewComponent, AXPListWidget, AXPListWidgetViewComponent, AXPMapBoxWidget, AXPMapBoxWidgetEditComponent, AXPMapBoxWidgetViewComponent, AXPMaxLengthExpressionValidationWidget, AXPMaxLengthValidationWidgetEditComponent, AXPMinLengthExpressionValidationWidget, AXPMinLengthValidationWidgetEditComponent, AXPNumberBoxWidget, AXPNumberBoxWidgetColumnComponent, AXPNumberBoxWidgetEditComponent, AXPNumberBoxWidgetFilterComponent, AXPNumberBoxWidgetPrintComponent, AXPNumberBoxWidgetViewComponent, AXPPageWidget, AXPPageWidgetViewComponent, AXPPasswordBoxWidget, AXPPasswordBoxWidgetColumnComponent, AXPPasswordBoxWidgetEditComponent, AXPPasswordBoxWidgetFilterComponent, AXPPasswordBoxWidgetPrintComponent, AXPPasswordBoxWidgetViewComponent, AXPPhoneBoxWidget, AXPPhoneBoxWidgetColumnComponent, AXPPhoneBoxWidgetEditComponent, AXPPhoneBoxWidgetFilterComponent, AXPPhoneBoxWidgetPrintComponent, AXPPhoneBoxWidgetViewComponent, AXPRegularExpressionValidationWidget, AXPRegularExpressionValidationWidgetEditComponent, AXPRepeaterWidget, AXPRepeaterWidgetDesignerComponent, AXPRepeaterWidgetEditComponent, AXPRepeaterWidgetPrintComponent, AXPRepeaterWidgetViewComponent, AXPRequiredValidationWidget, AXPRequiredValidationWidgetEditComponent, AXPRichTextWidget, AXPRichTextWidgetColumnComponent, AXPRichTextWidgetEditComponent, AXPRichTextWidgetFilterComponent, AXPRichTextWidgetPrintComponent, AXPRichTextWidgetViewComponent, AXPSelectBoxWidget, AXPSelectBoxWidgetColumnComponent, AXPSelectBoxWidgetEditComponent, AXPSelectBoxWidgetPrintComponent, AXPSelectBoxWidgetViewComponent, AXPSelectionListWidget, AXPSelectionListWidgetColumnComponent, AXPSelectionListWidgetDesignerComponent, AXPSelectionListWidgetEditComponent, AXPSelectionListWidgetFilterComponent, AXPSelectionListWidgetPrintComponent, AXPSelectionListWidgetViewComponent, AXPSignatureWidget, AXPSignatureWidgetColumnComponent, AXPSignatureWidgetEditComponent, AXPSignatureWidgetFilterComponent, AXPSignatureWidgetPrintComponent, AXPSignatureWidgetViewComponent, AXPSpacingWidget, AXPSpacingWidgetEditComponent, AXPTemplateBoxWidget, AXPTemplateBoxWidgetColumnComponent, AXPTemplateBoxWidgetEditComponent, AXPTemplateBoxWidgetFilterComponent, AXPTemplateBoxWidgetPrintComponent, AXPTemplateBoxWidgetViewComponent, AXPTextBoxWidget, AXPTextBoxWidgetColumnComponent, AXPTextBoxWidgetEditComponent, AXPTextBoxWidgetFilterComponent, AXPTextBoxWidgetPrintComponent, AXPTextBoxWidgetViewComponent, AXPToggleWidget, AXPToggleWidgetColumnComponent, AXPToggleWidgetEditComponent, AXPToggleWidgetFilterComponent, AXPToggleWidgetPrintComponent, AXPToggleWidgetViewComponent, AXPWidgetsModule, AXP_ALLOW_CLEAR_PROPERTY, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_ALLOW_SEARCH_PROPERTY, AXP_ANIMATION_PROPERTY_GROUP, AXP_APPEARANCE_PROPERTY_GROUP, AXP_BEHAVIOR_PROPERTY_GROUP, AXP_BETWEEN_VALIDATION_PROPERTY, AXP_BG_COLOR_PROPERTY, AXP_BOX_MODEL_PROPERTY_GROUP, AXP_CALLBACK_VALIDATION_PROPERTY, AXP_COLOR_PROPERTY, AXP_CONTENT_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_DATA_SOURCE_PROPERTIES, AXP_DATA_SOURCE_PROPERTY, AXP_DATA_SOURCE_TEXT_FIELD, AXP_DATA_SOURCE_VALUE_FIELD, AXP_DATE_FORMAT_PROPERTY, AXP_DESCRIPTION_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DISABLED_PROPERTY, AXP_DOWNLOADABLE_PROPERTY, AXP_EQUAL_VALIDATION_PROPERTY, AXP_FALSY_TEXT_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_Flex_Box_Align_Options, AXP_Flex_Box_Alignments, AXP_Flex_Box_Justify_Options, AXP_GREATER_THAN_VALIDATION_PROPERTY, AXP_Grid_Box_Align_Items_Options, AXP_Grid_Box_Alignments, AXP_Grid_Box_Justify_Items_Options, AXP_HAS_CLEAR_BUTTON_PROPERTY, AXP_HAS_COPY_ICON_PROPERTY, AXP_HAS_EYE_ICON_PROPERTY, AXP_HAS_ICON_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_LABEL_PROPERTY, AXP_LAYOUT_ADVANCED_GRID_PROPERTY, AXP_LAYOUT_BORDER_PROPERTY, AXP_LAYOUT_COLUMNS_PROPERTY, AXP_LAYOUT_DIRECTION_PROPERTY, AXP_LAYOUT_FLEX_ITEM_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY_GROUP, AXP_LAYOUT_GAP_PROPERTY, AXP_LAYOUT_GRID_ITEM_PROPERTY, AXP_LAYOUT_GRID_PROPERTIES, AXP_LAYOUT_GRID_PROPERTY, AXP_LAYOUT_GRID_PROPERTY_GROUP, AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_LAYOUT_ROWS_PROPERTY, AXP_LAYOUT_SHOW_HEADER_PROPERTY, AXP_LAYOUT_SPACING_PROPERTY, AXP_LESS_THAN_VALIDATION_PROPERTY, AXP_MAX_LENGTH_VALIDATION_PROPERTY, AXP_MIN_LENGTH_VALIDATION_PROPERTY, AXP_NAME_PROPERTY, AXP_PLACEHOLDER_PROPERTY, AXP_READONLY_PROPERTY, AXP_REGULAR_EXPRESSION_VALIDATION_PROPERTY, AXP_REQUIRED_VALIDATION_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_STYLING_PROPERTY_GROUP, AXP_TABLE_COLUMN_HEIGHT_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_TEXT_FIELD_PROPERTY, AXP_TEXT_PROPERTY, AXP_THEME_PROPERTY, AXP_TITLE_PROPERTY, AXP_TRULY_TEXT_PROPERTY, AXP_VALIDATION_PROPERTY_GROUP, AXP_VALUE_FIELD_PROPERTY, AXP_WIDGET_PROPERTY_GROUP, AXP_default_Border_Box_Units, AXP_default_Border_Box_Value, AXP_default_Spacing_Box_Units, AXP_default_Spacing_Box_Value, DEFAULT_STRATEGY_CONFIG, STRATEGY_CONFIG_TOKEN, booleanDefaultProperty, largeTextDefaultProperty, numberDefaultProperty, numberMaxValueProperty, numberMinValueProperty, plainTextDefaultProperty };
2393
+ export { AXPAdvancedGridItemWidget, AXPAdvancedGridItemWidgetDesignerComponent, AXPAdvancedGridItemWidgetPrintComponent, AXPAdvancedGridItemWidgetViewComponent, AXPAdvancedGridOptionsWidget, AXPAdvancedGridOptionsWidgetEditComponent, AXPAdvancedGridWidget, AXPAdvancedGridWidgetDesignerComponent, AXPAdvancedGridWidgetViewComponent, AXPAvatarWidget, AXPAvatarWidgetColumnComponent, AXPAvatarWidgetDesignerComponent, AXPAvatarWidgetEditComponent, AXPAvatarWidgetPrintComponent, AXPAvatarWidgetViewComponent, AXPBetweenExpressionValidationWidget, AXPBetweenValidationWidgetEditComponent, AXPBlockWidget, AXPBlockWidgetDesignerComponent, AXPBlockWidgetViewComponent, AXPBorderWidget, AXPBorderWidgetEditComponent, AXPButtonWidget, AXPButtonWidgetViewComponent, AXPCallbackValidationWidget, AXPCallbackValidationWidgetEditComponent, AXPCheckBoxWidget, AXPCheckBoxWidgetEditComponent, AXPContactWidget, AXPContactWidgetColumnComponent, AXPContactWidgetEditComponent, AXPContactWidgetViewComponent, AXPDateTimeBoxWidget, AXPDateTimeBoxWidgetColumnComponent, AXPDateTimeBoxWidgetEditComponent, AXPDateTimeBoxWidgetPrintComponent, AXPDateTimeBoxWidgetViewComponent, AXPDirectionWidget, AXPDirectionWidgetEditComponent, AXPEditFileUploaderCommand, AXPEmailBoxWidget, AXPEmailBoxWidgetColumnComponent, AXPEmailBoxWidgetEditComponent, AXPEmailBoxWidgetFilterComponent, AXPEmailBoxWidgetPrintComponent, AXPEmailBoxWidgetViewComponent, AXPEqualValidationWidget, AXPEqualValidationWidgetEditComponent, AXPExtraPropertiesSchemaWidget, AXPExtraPropertiesValuesWidget, AXPExtraPropertiesWidget, AXPFileListComponent, AXPFileUploaderWidget, AXPFileUploaderWidgetColumnComponent, AXPFileUploaderWidgetEditComponent, AXPFileUploaderWidgetPrintComponent, AXPFileUploaderWidgetService, AXPFileUploaderWidgetViewComponent, AXPFlexItemOptionsWidget, AXPFlexItemOptionsWidgetEditComponent, AXPFlexItemWidget, AXPFlexItemWidgetDesignerComponent, AXPFlexItemWidgetViewComponent, AXPFlexOptionsWidget, AXPFlexOptionsWidgetEditComponent, AXPFlexWidget, AXPFlexWidgetDesignerComponent, AXPFlexWidgetViewComponent, AXPGalleryWidget, AXPGalleryWidgetEditComponent, AXPGalleryWidgetPrintComponent, AXPGalleryWidgetViewComponent, AXPGreaterThanExpressionValidationWidget, AXPGreaterThanValidationWidgetEditComponent, AXPGridItemOptionsWidget, AXPGridItemOptionsWidgetEditComponent, AXPGridOptionsWidget, AXPGridOptionsWidgetEditComponent, AXPImageMarkerPopupComponent, AXPImageMarkerWidget, AXPImageMarkerWidgetColumnComponent, AXPImageMarkerWidgetEditComponent, AXPImageMarkerWidgetViewComponent, AXPLargeTextWidget, AXPLargeTextWidgetColumnComponent, AXPLargeTextWidgetEditComponent, AXPLargeTextWidgetFilterComponent, AXPLargeTextWidgetPrintComponent, AXPLargeTextWidgetViewComponent, AXPLessThanExpressionValidationWidget, AXPLessThanValidationWidgetEditComponent, AXPLinkWidget, AXPLinkWidgetColumnComponent, AXPLinkWidgetEditComponent, AXPLinkWidgetFilterComponent, AXPLinkWidgetPrintComponent, AXPLinkWidgetViewComponent, AXPListWidget, AXPListWidgetViewComponent, AXPMapBoxWidget, AXPMapBoxWidgetEditComponent, AXPMapBoxWidgetViewComponent, AXPMaxLengthExpressionValidationWidget, AXPMaxLengthValidationWidgetEditComponent, AXPMinLengthExpressionValidationWidget, AXPMinLengthValidationWidgetEditComponent, AXPNumberBoxWidget, AXPNumberBoxWidgetColumnComponent, AXPNumberBoxWidgetEditComponent, AXPNumberBoxWidgetFilterComponent, AXPNumberBoxWidgetPrintComponent, AXPNumberBoxWidgetViewComponent, AXPPageWidget, AXPPageWidgetViewComponent, AXPPasswordBoxWidget, AXPPasswordBoxWidgetColumnComponent, AXPPasswordBoxWidgetEditComponent, AXPPasswordBoxWidgetFilterComponent, AXPPasswordBoxWidgetPrintComponent, AXPPasswordBoxWidgetViewComponent, AXPPhoneBoxWidget, AXPPhoneBoxWidgetColumnComponent, AXPPhoneBoxWidgetEditComponent, AXPPhoneBoxWidgetFilterComponent, AXPPhoneBoxWidgetPrintComponent, AXPPhoneBoxWidgetViewComponent, AXPRegularExpressionValidationWidget, AXPRegularExpressionValidationWidgetEditComponent, AXPRepeaterWidget, AXPRepeaterWidgetDesignerComponent, AXPRepeaterWidgetEditComponent, AXPRepeaterWidgetPrintComponent, AXPRepeaterWidgetViewComponent, AXPRequiredValidationWidget, AXPRequiredValidationWidgetEditComponent, AXPRichTextWidget, AXPRichTextWidgetColumnComponent, AXPRichTextWidgetEditComponent, AXPRichTextWidgetFilterComponent, AXPRichTextWidgetPrintComponent, AXPRichTextWidgetViewComponent, AXPSelectBoxWidget, AXPSelectBoxWidgetColumnComponent, AXPSelectBoxWidgetEditComponent, AXPSelectBoxWidgetPrintComponent, AXPSelectBoxWidgetViewComponent, AXPSelectionListWidget, AXPSelectionListWidgetColumnComponent, AXPSelectionListWidgetDesignerComponent, AXPSelectionListWidgetEditComponent, AXPSelectionListWidgetFilterComponent, AXPSelectionListWidgetPrintComponent, AXPSelectionListWidgetViewComponent, AXPSignatureWidget, AXPSignatureWidgetColumnComponent, AXPSignatureWidgetEditComponent, AXPSignatureWidgetFilterComponent, AXPSignatureWidgetPrintComponent, AXPSignatureWidgetViewComponent, AXPSpacingWidget, AXPSpacingWidgetEditComponent, AXPTemplateBoxWidget, AXPTemplateBoxWidgetColumnComponent, AXPTemplateBoxWidgetEditComponent, AXPTemplateBoxWidgetFilterComponent, AXPTemplateBoxWidgetPrintComponent, AXPTemplateBoxWidgetViewComponent, AXPTextBoxWidget, AXPTextBoxWidgetColumnComponent, AXPTextBoxWidgetEditComponent, AXPTextBoxWidgetFilterComponent, AXPTextBoxWidgetPrintComponent, AXPTextBoxWidgetViewComponent, AXPToggleWidget, AXPToggleWidgetColumnComponent, AXPToggleWidgetEditComponent, AXPToggleWidgetFilterComponent, AXPToggleWidgetPrintComponent, AXPToggleWidgetViewComponent, AXPWidgetsModule, AXP_ALLOW_CLEAR_PROPERTY, AXP_ALLOW_MULTIPLE_PROPERTY, AXP_ALLOW_SEARCH_PROPERTY, AXP_ANIMATION_PROPERTY_GROUP, AXP_APPEARANCE_PROPERTY_GROUP, AXP_BEHAVIOR_PROPERTY_GROUP, AXP_BETWEEN_VALIDATION_PROPERTY, AXP_BG_COLOR_PROPERTY, AXP_BOX_MODEL_PROPERTY_GROUP, AXP_CALLBACK_VALIDATION_PROPERTY, AXP_COLOR_PROPERTY, AXP_CONTENT_PROPERTY, AXP_DATA_PATH_PROPERTY, AXP_DATA_PROPERTY_GROUP, AXP_DATA_SOURCE_PROPERTIES, AXP_DATA_SOURCE_PROPERTY, AXP_DATA_SOURCE_TEXT_FIELD, AXP_DATA_SOURCE_VALUE_FIELD, AXP_DATE_FORMAT_PROPERTY, AXP_DESCRIPTION_PROPERTY, AXP_DIRECTION_PROPERTY, AXP_DISABLED_PROPERTY, AXP_DOWNLOADABLE_PROPERTY, AXP_EQUAL_VALIDATION_PROPERTY, AXP_FALSY_TEXT_PROPERTY, AXP_FONT_SIZE_PROPERTY, AXP_Flex_Box_Align_Options, AXP_Flex_Box_Alignments, AXP_Flex_Box_Justify_Options, AXP_GREATER_THAN_VALIDATION_PROPERTY, AXP_Grid_Box_Align_Items_Options, AXP_Grid_Box_Alignments, AXP_Grid_Box_Justify_Items_Options, AXP_HAS_CLEAR_BUTTON_PROPERTY, AXP_HAS_COPY_ICON_PROPERTY, AXP_HAS_EYE_ICON_PROPERTY, AXP_HAS_ICON_PROPERTY, AXP_HAS_LABEL_PROPERTY, AXP_ICON_PROPERTY, AXP_IS_LOADING_PROPERTY, AXP_LABEL_PROPERTY, AXP_LAYOUT_ADVANCED_GRID_PROPERTY, AXP_LAYOUT_BORDER_PROPERTY, AXP_LAYOUT_COLUMNS_PROPERTY, AXP_LAYOUT_DIRECTION_PROPERTY, AXP_LAYOUT_FLEX_ITEM_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY, AXP_LAYOUT_FLEX_PROPERTY_GROUP, AXP_LAYOUT_GAP_PROPERTY, AXP_LAYOUT_GRID_ITEM_PROPERTY, AXP_LAYOUT_GRID_PROPERTIES, AXP_LAYOUT_GRID_PROPERTY, AXP_LAYOUT_GRID_PROPERTY_GROUP, AXP_LAYOUT_GRID_ROW_PROPERTIES, AXP_LAYOUT_ROWS_PROPERTY, AXP_LAYOUT_SHOW_HEADER_PROPERTY, AXP_LAYOUT_SPACING_PROPERTY, AXP_LESS_THAN_VALIDATION_PROPERTY, AXP_MAX_LENGTH_VALIDATION_PROPERTY, AXP_MIN_LENGTH_VALIDATION_PROPERTY, AXP_NAME_PROPERTY, AXP_PLACEHOLDER_PROPERTY, AXP_READONLY_PROPERTY, AXP_REGULAR_EXPRESSION_VALIDATION_PROPERTY, AXP_REQUIRED_VALIDATION_PROPERTY, AXP_STYLE_COLOR_PROPERTY, AXP_STYLE_LOOK_PROPERTY, AXP_STYLING_PROPERTY_GROUP, AXP_TABLE_COLUMN_HEIGHT_PROPERTY, AXP_TABLE_COLUMN_WIDTH_PROPERTY, AXP_TEXT_FIELD_PROPERTY, AXP_TEXT_PROPERTY, AXP_THEME_PROPERTY, AXP_TITLE_PROPERTY, AXP_TRULY_TEXT_PROPERTY, AXP_VALIDATION_PROPERTY_GROUP, AXP_VALUE_FIELD_PROPERTY, AXP_WIDGET_PROPERTY_GROUP, AXP_default_Border_Box_Units, AXP_default_Border_Box_Value, AXP_default_Spacing_Box_Units, AXP_default_Spacing_Box_Value, DEFAULT_STRATEGY_CONFIG, STRATEGY_CONFIG_TOKEN, booleanDefaultProperty, largeTextDefaultProperty, numberDefaultProperty, numberMaxValueProperty, numberMinValueProperty, plainTextDefaultProperty };
2329
2394
  export type { AXPAdvancedGridItemWidgetOptions, AXPAdvancedGridWidgetOptions, AXPBlockWidgetConfigType, AXPBlockWidgetOptions, AXPCheckBoxWidgetConfigType, AXPCheckBoxWidgetOptions, AXPContactWidgetOptions, AXPDateTimeBoxWidgetOptions, AXPEmailBoxWidgetOptions, AXPFlexBoxAlignmentOption, AXPFlexBoxOption, AXPFlexItemStyles, AXPFlexItemWidgetOptions, AXPFlexWidgetConfigType, AXPFlexWidgetOptions, AXPGridBoxAlignmentOption, AXPGridBoxOption, AXPImageMarkerWidgetOptions, AXPImageMarkerWidgetPoint, AXPLargeTextWidgetOptions, AXPLinkWidgetOptions, AXPListWidgetColumn, AXPListWidgetOptions, AXPListWidgetRowCommand, AXPNumberBoxWidgetOptions, AXPPageWidgetOptions, AXPPasswordBoxWidgetOptions, AXPPhoneBoxWidgetOptions, AXPRepeaterWidgetOptions, AXPRichTextWidgetOptions, AXPSelectBoxWidgetOptions, AXPSelectionListWidgetOptions, AXPSpacingBoxDefaultValues, AXPTemplateBoxWidgetOptions, AXPTextBoxWidgetOptions, AXPToggleWidgetOptions, StrategyConfig };
@@ -1,211 +0,0 @@
1
- import * as i1$1 from '@acorex/components/button';
2
- import { AXButtonModule } from '@acorex/components/button';
3
- import * as i2 from '@acorex/components/decorators';
4
- import { AXDecoratorModule } from '@acorex/components/decorators';
5
- import { AXBasePageComponent } from '@acorex/components/page';
6
- import * as i1$2 from '@acorex/components/text-box';
7
- import { AXTextBoxModule } from '@acorex/components/text-box';
8
- import * as i4 from '@acorex/components/form';
9
- import { AXFormModule } from '@acorex/components/form';
10
- import * as i2$1 from '@acorex/components/label';
11
- import { AXLabelModule } from '@acorex/components/label';
12
- import * as i2$2 from '@acorex/components/loading';
13
- import { AXLoadingModule } from '@acorex/components/loading';
14
- import * as i5 from '@acorex/core/translation';
15
- import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
16
- import { AXValidationModule } from '@acorex/core/validation';
17
- import * as i1$3 from '@angular/common';
18
- import { CommonModule } from '@angular/common';
19
- import * as i0 from '@angular/core';
20
- import { model, signal, inject, Component } from '@angular/core';
21
- import * as i1 from '@angular/forms';
22
- import { FormsModule } from '@angular/forms';
23
-
24
- class AXPFileRenamePopupComponent extends AXBasePageComponent {
25
- constructor() {
26
- super(...arguments);
27
- this.fileName = model('', ...(ngDevMode ? [{ debugName: "fileName" }] : []));
28
- this.loading = signal(false, ...(ngDevMode ? [{ debugName: "loading" }] : []));
29
- // Translation service
30
- this.translationService = inject(AXTranslationService);
31
- // File name validation pattern - excludes invalid characters for file names
32
- this.fileNamePattern = '^[^<>:"|?*\\/\\\\]+$';
33
- // Validation messages
34
- this.requiredMessage = 'File name is required';
35
- this.invalidCharsMessage = 'File name contains invalid characters';
36
- this.invalidFormatMessage = 'Invalid file name format';
37
- this.placeholderText = 'Enter file name';
38
- // Custom validator for file name
39
- this.validateFileName = (value) => {
40
- if (!value)
41
- return false;
42
- // Check if starts or ends with space or dot
43
- if (value.startsWith(' ') || value.endsWith(' ') ||
44
- value.startsWith('.') || value.endsWith('.')) {
45
- return false;
46
- }
47
- // Check for reserved Windows file names
48
- const reservedNames = ['CON', 'PRN', 'AUX', 'NUL', 'COM1', 'COM2', 'COM3', 'COM4', 'COM5', 'COM6', 'COM7', 'COM8', 'COM9', 'LPT1', 'LPT2', 'LPT3', 'LPT4', 'LPT5', 'LPT6', 'LPT7', 'LPT8', 'LPT9'];
49
- const nameWithoutExtension = value.split('.')[0].toUpperCase();
50
- if (reservedNames.includes(nameWithoutExtension)) {
51
- return false;
52
- }
53
- return true;
54
- };
55
- }
56
- ngOnInit() {
57
- super.ngOnInit();
58
- // Set initial file name from the file passed to popup
59
- if (this.file?.name) {
60
- this.fileName.set(this.file.name);
61
- }
62
- }
63
- onCancel() {
64
- this.close({
65
- result: false
66
- });
67
- }
68
- async handleSave(form) {
69
- const formResult = await form.validate();
70
- if (!formResult.result) {
71
- return;
72
- }
73
- this.loading.set(true);
74
- try {
75
- // Simulate a brief loading state for better UX
76
- await new Promise(resolve => setTimeout(resolve, 300));
77
- this.close({
78
- result: true,
79
- fileName: this.fileName()
80
- });
81
- }
82
- finally {
83
- this.loading.set(false);
84
- }
85
- }
86
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPFileRenamePopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
87
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.8", type: AXPFileRenamePopupComponent, isStandalone: true, selector: "axp-file-rename-popup", inputs: { fileName: { classPropertyName: "fileName", publicName: "fileName", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { fileName: "fileNameChange" }, usesInheritance: true, ngImport: i0, template: `
88
- <div class="ax-p-4">
89
- <ax-form #form>
90
- <div class="ax-flex ax-flex-col ax-gap-4">
91
- <ax-form-field>
92
- <ax-label>
93
- {{ 'file-name' | translate: { scope: 'document-management' } | async }}
94
- </ax-label>
95
- <ax-text-box
96
- [(ngModel)]="fileName"
97
- class="ax-input ax-w-full"
98
- [placeholder]="'enter-file-name' | translate: { scope: 'document-management' } | async">
99
- <ax-validation-rule
100
- rule="required"
101
- [message]="('validation.file-name-required' | translate: { scope: 'document-management' } | async)!">
102
- </ax-validation-rule>
103
- <ax-validation-rule
104
- rule="regex"
105
- [options]="{ pattern: fileNamePattern }"
106
- [message]="('validation.file-name-invalid-characters' | translate: { scope: 'document-management' } | async)!">
107
- </ax-validation-rule>
108
- <ax-validation-rule
109
- rule="callback"
110
- [options]="{ validate: validateFileName }"
111
- [message]="('validation.file-name-invalid-format' | translate: { scope: 'document-management' } | async)!">
112
- </ax-validation-rule>
113
- </ax-text-box>
114
- </ax-form-field>
115
- </div>
116
- </ax-form>
117
- </div>
118
- <ax-footer>
119
- <ax-suffix>
120
- <ax-button
121
- (onClick)="onCancel()"
122
- text="Cancel"
123
- color="default">
124
- </ax-button>
125
- <ax-button
126
- look="solid"
127
- color="primary"
128
- (onClick)="handleSave(form)"
129
- text="Save"
130
- [disabled]="loading()">
131
- @if(loading()) {
132
- <ax-loading></ax-loading>
133
- }
134
- </ax-button>
135
- </ax-suffix>
136
- </ax-footer>
137
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1$1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i1$2.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXFormModule }, { kind: "component", type: i4.AXFormFieldComponent, selector: "ax-form-field", inputs: ["labelMode"] }, { kind: "component", type: i4.AXFormComponent, selector: "ax-form", inputs: ["labelMode", "look", "messageStyle", "updateOn"], outputs: ["onValidate", "updateOnChange"] }, { kind: "directive", type: i4.AXValidationRuleDirective, selector: "ax-validation-rule", inputs: ["rule", "options", "message", "disabled"] }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i2$1.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXLoadingModule }, { kind: "component", type: i2$2.AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXValidationModule }, { kind: "pipe", type: i1$3.AsyncPipe, name: "async" }, { kind: "pipe", type: i5.AXTranslatorPipe, name: "translate" }] }); }
138
- }
139
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.8", ngImport: i0, type: AXPFileRenamePopupComponent, decorators: [{
140
- type: Component,
141
- args: [{
142
- selector: 'axp-file-rename-popup',
143
- template: `
144
- <div class="ax-p-4">
145
- <ax-form #form>
146
- <div class="ax-flex ax-flex-col ax-gap-4">
147
- <ax-form-field>
148
- <ax-label>
149
- {{ 'file-name' | translate: { scope: 'document-management' } | async }}
150
- </ax-label>
151
- <ax-text-box
152
- [(ngModel)]="fileName"
153
- class="ax-input ax-w-full"
154
- [placeholder]="'enter-file-name' | translate: { scope: 'document-management' } | async">
155
- <ax-validation-rule
156
- rule="required"
157
- [message]="('validation.file-name-required' | translate: { scope: 'document-management' } | async)!">
158
- </ax-validation-rule>
159
- <ax-validation-rule
160
- rule="regex"
161
- [options]="{ pattern: fileNamePattern }"
162
- [message]="('validation.file-name-invalid-characters' | translate: { scope: 'document-management' } | async)!">
163
- </ax-validation-rule>
164
- <ax-validation-rule
165
- rule="callback"
166
- [options]="{ validate: validateFileName }"
167
- [message]="('validation.file-name-invalid-format' | translate: { scope: 'document-management' } | async)!">
168
- </ax-validation-rule>
169
- </ax-text-box>
170
- </ax-form-field>
171
- </div>
172
- </ax-form>
173
- </div>
174
- <ax-footer>
175
- <ax-suffix>
176
- <ax-button
177
- (onClick)="onCancel()"
178
- text="Cancel"
179
- color="default">
180
- </ax-button>
181
- <ax-button
182
- look="solid"
183
- color="primary"
184
- (onClick)="handleSave(form)"
185
- text="Save"
186
- [disabled]="loading()">
187
- @if(loading()) {
188
- <ax-loading></ax-loading>
189
- }
190
- </ax-button>
191
- </ax-suffix>
192
- </ax-footer>
193
- `,
194
- standalone: true,
195
- imports: [
196
- CommonModule,
197
- FormsModule,
198
- AXButtonModule,
199
- AXDecoratorModule,
200
- AXTextBoxModule,
201
- AXFormModule,
202
- AXLabelModule,
203
- AXLoadingModule,
204
- AXTranslationModule,
205
- AXValidationModule
206
- ]
207
- }]
208
- }] });
209
-
210
- export { AXPFileRenamePopupComponent };
211
- //# sourceMappingURL=acorex-platform-widgets-file-rename-popup.component-DHFMnkls.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-widgets-file-rename-popup.component-DHFMnkls.mjs","sources":["../tmp-esm2022/widgets/lib/widgets/advance/file-uploader/file-list/file-rename-popup/file-rename-popup.component.js"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXTranslationModule, AXTranslationService } from '@acorex/core/translation';\nimport { AXValidationModule } from '@acorex/core/validation';\nimport { CommonModule } from '@angular/common';\nimport { Component, model, signal, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\nimport * as i2 from \"@acorex/components/button\";\nimport * as i3 from \"@acorex/components/decorators\";\nimport * as i4 from \"@acorex/components/text-box\";\nimport * as i5 from \"@acorex/components/form\";\nimport * as i6 from \"@acorex/components/label\";\nimport * as i7 from \"@acorex/components/loading\";\nimport * as i8 from \"@angular/common\";\nimport * as i9 from \"@acorex/core/translation\";\nexport class AXPFileRenamePopupComponent extends AXBasePageComponent {\n constructor() {\n super(...arguments);\n this.fileName = model('', ...(ngDevMode ? [{ debugName: \"fileName\" }] : []));\n this.loading = signal(false, ...(ngDevMode ? [{ debugName: \"loading\" }] : []));\n // Translation service\n this.translationService = inject(AXTranslationService);\n // File name validation pattern - excludes invalid characters for file names\n this.fileNamePattern = '^[^<>:\"|?*\\\\/\\\\\\\\]+$';\n // Validation messages\n this.requiredMessage = 'File name is required';\n this.invalidCharsMessage = 'File name contains invalid characters';\n this.invalidFormatMessage = 'Invalid file name format';\n this.placeholderText = 'Enter file name';\n // Custom validator for file name\n this.validateFileName = (value) => {\n if (!value)\n return false;\n // Check if starts or ends with space or dot\n if (value.startsWith(' ') || value.endsWith(' ') ||\n value.startsWith('.') || value.endsWith('.')) {\n return false;\n }\n // Check for reserved Windows file names\n const reservedNames = ['CON', 'PRN', 'AUX', 'NUL', 'COM1', 'COM2', 'COM3', 'COM4', 'COM5', 'COM6', 'COM7', 'COM8', 'COM9', 'LPT1', 'LPT2', 'LPT3', 'LPT4', 'LPT5', 'LPT6', 'LPT7', 'LPT8', 'LPT9'];\n const nameWithoutExtension = value.split('.')[0].toUpperCase();\n if (reservedNames.includes(nameWithoutExtension)) {\n return false;\n }\n return true;\n };\n }\n ngOnInit() {\n super.ngOnInit();\n // Set initial file name from the file passed to popup\n if (this.file?.name) {\n this.fileName.set(this.file.name);\n }\n }\n onCancel() {\n this.close({\n result: false\n });\n }\n async handleSave(form) {\n const formResult = await form.validate();\n if (!formResult.result) {\n return;\n }\n this.loading.set(true);\n try {\n // Simulate a brief loading state for better UX\n await new Promise(resolve => setTimeout(resolve, 300));\n this.close({\n result: true,\n fileName: this.fileName()\n });\n }\n finally {\n this.loading.set(false);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPFileRenamePopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.8\", type: AXPFileRenamePopupComponent, isStandalone: true, selector: \"axp-file-rename-popup\", inputs: { fileName: { classPropertyName: \"fileName\", publicName: \"fileName\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { fileName: \"fileNameChange\" }, usesInheritance: true, ngImport: i0, template: `\n <div class=\"ax-p-4\">\n <ax-form #form>\n <div class=\"ax-flex ax-flex-col ax-gap-4\">\n <ax-form-field>\n <ax-label>\n {{ 'file-name' | translate: { scope: 'document-management' } | async }}\n </ax-label>\n <ax-text-box \n [(ngModel)]=\"fileName\" \n class=\"ax-input ax-w-full\" \n [placeholder]=\"'enter-file-name' | translate: { scope: 'document-management' } | async\">\n <ax-validation-rule \n rule=\"required\" \n [message]=\"('validation.file-name-required' | translate: { scope: 'document-management' } | async)!\">\n </ax-validation-rule>\n <ax-validation-rule \n rule=\"regex\" \n [options]=\"{ pattern: fileNamePattern }\"\n [message]=\"('validation.file-name-invalid-characters' | translate: { scope: 'document-management' } | async)!\">\n </ax-validation-rule>\n <ax-validation-rule \n rule=\"callback\"\n [options]=\"{ validate: validateFileName }\"\n [message]=\"('validation.file-name-invalid-format' | translate: { scope: 'document-management' } | async)!\">\n </ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n </div>\n </ax-form>\n </div>\n <ax-footer>\n <ax-suffix>\n <ax-button \n (onClick)=\"onCancel()\" \n text=\"Cancel\"\n color=\"default\">\n </ax-button>\n <ax-button \n look=\"solid\" \n color=\"primary\" \n (onClick)=\"handleSave(form)\" \n text=\"Save\"\n [disabled]=\"loading()\">\n @if(loading()) {\n <ax-loading></ax-loading>\n }\n </ax-button>\n </ax-suffix>\n </ax-footer>\n `, isInline: true, dependencies: [{ kind: \"ngmodule\", type: CommonModule }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i1.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i1.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"ngmodule\", type: AXButtonModule }, { kind: \"component\", type: i2.AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"ngmodule\", type: AXDecoratorModule }, { kind: \"component\", type: i3.AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"ngmodule\", type: AXTextBoxModule }, { kind: \"component\", type: i4.AXTextBoxComponent, selector: \"ax-text-box\", inputs: [\"disabled\", \"tabIndex\", \"readonly\", \"value\", \"state\", \"name\", \"id\", \"placeholder\", \"maxLength\", \"allowNull\", \"type\", \"autoComplete\", \"look\", \"mask-options\", \"class\"], outputs: [\"onBlur\", \"onFocus\", \"valueChange\", \"stateChange\", \"onValueChanged\", \"readonlyChange\", \"disabledChange\", \"onKeyDown\", \"onKeyUp\", \"onKeyPress\"] }, { kind: \"ngmodule\", type: AXFormModule }, { kind: \"component\", type: i5.AXFormFieldComponent, selector: \"ax-form-field\", inputs: [\"labelMode\"] }, { kind: \"component\", type: i5.AXFormComponent, selector: \"ax-form\", inputs: [\"labelMode\", \"look\", \"messageStyle\", \"updateOn\"], outputs: [\"onValidate\", \"updateOnChange\"] }, { kind: \"directive\", type: i5.AXValidationRuleDirective, selector: \"ax-validation-rule\", inputs: [\"rule\", \"options\", \"message\", \"disabled\"] }, { kind: \"ngmodule\", type: AXLabelModule }, { kind: \"component\", type: i6.AXLabelComponent, selector: \"ax-label\", inputs: [\"required\", \"for\"], outputs: [\"requiredChange\"] }, { kind: \"ngmodule\", type: AXLoadingModule }, { kind: \"component\", type: i7.AXLoadingComponent, selector: \"ax-loading\", inputs: [\"visible\", \"type\", \"context\"], outputs: [\"visibleChange\"] }, { kind: \"ngmodule\", type: AXTranslationModule }, { kind: \"ngmodule\", type: AXValidationModule }, { kind: \"pipe\", type: i8.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i9.AXTranslatorPipe, name: \"translate\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.8\", ngImport: i0, type: AXPFileRenamePopupComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'axp-file-rename-popup',\n template: `\n <div class=\"ax-p-4\">\n <ax-form #form>\n <div class=\"ax-flex ax-flex-col ax-gap-4\">\n <ax-form-field>\n <ax-label>\n {{ 'file-name' | translate: { scope: 'document-management' } | async }}\n </ax-label>\n <ax-text-box \n [(ngModel)]=\"fileName\" \n class=\"ax-input ax-w-full\" \n [placeholder]=\"'enter-file-name' | translate: { scope: 'document-management' } | async\">\n <ax-validation-rule \n rule=\"required\" \n [message]=\"('validation.file-name-required' | translate: { scope: 'document-management' } | async)!\">\n </ax-validation-rule>\n <ax-validation-rule \n rule=\"regex\" \n [options]=\"{ pattern: fileNamePattern }\"\n [message]=\"('validation.file-name-invalid-characters' | translate: { scope: 'document-management' } | async)!\">\n </ax-validation-rule>\n <ax-validation-rule \n rule=\"callback\"\n [options]=\"{ validate: validateFileName }\"\n [message]=\"('validation.file-name-invalid-format' | translate: { scope: 'document-management' } | async)!\">\n </ax-validation-rule>\n </ax-text-box>\n </ax-form-field>\n </div>\n </ax-form>\n </div>\n <ax-footer>\n <ax-suffix>\n <ax-button \n (onClick)=\"onCancel()\" \n text=\"Cancel\"\n color=\"default\">\n </ax-button>\n <ax-button \n look=\"solid\" \n color=\"primary\" \n (onClick)=\"handleSave(form)\" \n text=\"Save\"\n [disabled]=\"loading()\">\n @if(loading()) {\n <ax-loading></ax-loading>\n }\n </ax-button>\n </ax-suffix>\n </ax-footer>\n `,\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n AXButtonModule,\n AXDecoratorModule,\n AXTextBoxModule,\n AXFormModule,\n AXLabelModule,\n AXLoadingModule,\n AXTranslationModule,\n AXValidationModule\n ]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1yZW5hbWUtcG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS93aWRnZXRzL3NyYy9saWIvd2lkZ2V0cy9hZHZhbmNlL2ZpbGUtdXBsb2FkZXIvZmlsZS1saXN0L2ZpbGUtcmVuYW1lLXBvcHVwL2ZpbGUtcmVuYW1lLXBvcHVwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQW1CLE1BQU0seUJBQXlCLENBQUM7QUFDeEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7O0FBc0U3QyxNQUFNLE9BQU8sMkJBQTRCLFNBQVEsbUJBQW1CO0lBbkVwRTs7UUFvRUUsYUFBUSxHQUFHLEtBQUssQ0FB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SyxDQUFDLENBQUM7UUFDMUIsQ0FBQztJQUNILENBQUM7OEdBeEVVLDJCQUEyQjtrR0FBM0IsMkJBQTJCLDhSQWpFNUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0RULDJEQUdDLFlBQVksOEJBQ1osV0FBVyw4VkFDWCxjQUFjLDZYQUNkLGlCQUFpQixxUEFDakIsZUFBZSxxYkFDZixZQUFZLGljQUNaLGFBQWEsZ0tBQ2IsZUFBZSw4S0FDZixtQkFBbUIsOEJBQ25CLGtCQUFrQjs7MkZBR1QsMkJBQTJCO2tCQW5FdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0RUO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixXQUFXO3dCQUNYLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixlQUFlO3dCQUNmLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3FCQUNuQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvck1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYQmFzZVBhZ2VDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcGFnZSc7XG5pbXBvcnQgeyBBWFRleHRCb3hNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvdGV4dC1ib3gnO1xuaW1wb3J0IHsgQVhGb3JtTW9kdWxlLCBBWEZvcm1Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZm9ybSc7XG5pbXBvcnQgeyBBWExhYmVsTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xhYmVsJztcbmltcG9ydCB7IEFYTG9hZGluZ01vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9sb2FkaW5nJztcbmltcG9ydCB7IEFYVHJhbnNsYXRpb25Nb2R1bGUsIEFYVHJhbnNsYXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFjb3JleC9jb3JlL3RyYW5zbGF0aW9uJztcbmltcG9ydCB7IEFYVmFsaWRhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS92YWxpZGF0aW9uJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIG1vZGVsLCBzaWduYWwsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBWFBGaWxlTGlzdEl0ZW0gfSBmcm9tICdAYWNvcmV4L3BsYXRmb3JtL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheHAtZmlsZS1yZW5hbWUtcG9wdXAnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJheC1wLTRcIj5cbiAgICAgIDxheC1mb3JtICNmb3JtPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZmxleCBheC1mbGV4LWNvbCBheC1nYXAtNFwiPlxuICAgICAgICAgIDxheC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPGF4LWxhYmVsPlxuICAgICAgICAgICAgICB7eyAnZmlsZS1uYW1lJyB8IHRyYW5zbGF0ZTogeyBzY29wZTogJ2RvY3VtZW50LW1hbmFnZW1lbnQnIH0gfCBhc3luYyB9fVxuICAgICAgICAgICAgPC9heC1sYWJlbD5cbiAgICAgICAgICAgIDxheC10ZXh0LWJveCBcbiAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJmaWxlTmFtZVwiIFxuICAgICAgICAgICAgICBjbGFzcz1cImF4LWlucHV0IGF4LXctZnVsbFwiIFxuICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ2VudGVyLWZpbGUtbmFtZScgfCB0cmFuc2xhdGU6IHsgc2NvcGU6ICdkb2N1bWVudC1tYW5hZ2VtZW50JyB9IHwgYXN5bmNcIj5cbiAgICAgICAgICAgICAgPGF4LXZhbGlkYXRpb24tcnVsZSBcbiAgICAgICAgICAgICAgICBydWxlPVwicmVxdWlyZWRcIiBcbiAgICAgICAgICAgICAgICBbbWVzc2FnZV09XCIoJ3ZhbGlkYXRpb24uZmlsZS1uYW1lLXJlcXVpcmVkJyB8IHRyYW5zbGF0ZTogeyBzY29wZTogJ2RvY3VtZW50LW1hbmFnZW1lbnQnIH0gfCBhc3luYykhXCI+XG4gICAgICAgICAgICAgIDwvYXgtdmFsaWRhdGlvbi1ydWxlPlxuICAgICAgICAgICAgICA8YXgtdmFsaWRhdGlvbi1ydWxlIFxuICAgICAgICAgICAgICAgIHJ1bGU9XCJyZWdleFwiIFxuICAgICAgICAgICAgICAgIFtvcHRpb25zXT1cInsgcGF0dGVybjogZmlsZU5hbWVQYXR0ZXJuIH1cIlxuICAgICAgICAgICAgICAgIFttZXNzYWdlXT1cIigndmFsaWRhdGlvbi5maWxlLW5hbWUtaW52YWxpZC1jaGFyYWN0ZXJzJyB8IHRyYW5zbGF0ZTogeyBzY29wZTogJ2RvY3VtZW50LW1hbmFnZW1lbnQnIH0gfCBhc3luYykhXCI+XG4gICAgICAgICAgICAgIDwvYXgtdmFsaWRhdGlvbi1ydWxlPlxuICAgICAgICAgICAgICA8YXgtdmFsaWRhdGlvbi1ydWxlIFxuICAgICAgICAgICAgICAgIHJ1bGU9XCJjYWxsYmFja1wiXG4gICAgICAgICAgICAgICAgW29wdGlvbnNdPVwieyB2YWxpZGF0ZTogdmFsaWRhdGVGaWxlTmFtZSB9XCJcbiAgICAgICAgICAgICAgICBbbWVzc2FnZV09XCIoJ3ZhbGlkYXRpb24uZmlsZS1uYW1lLWludmFsaWQtZm9ybWF0JyB8IHRyYW5zbGF0ZTogeyBzY29wZTogJ2RvY3VtZW50LW1hbmFnZW1lbnQnIH0gfCBhc3luYykhXCI+XG4gICAgICAgICAgICAgIDwvYXgtdmFsaWRhdGlvbi1ydWxlPlxuICAgICAgICAgICAgPC9heC10ZXh0LWJveD5cbiAgICAgICAgICA8L2F4LWZvcm0tZmllbGQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9heC1mb3JtPlxuICAgIDwvZGl2PlxuICAgIDxheC1mb290ZXI+XG4gICAgICA8YXgtc3VmZml4PlxuICAgICAgICA8YXgtYnV0dG9uIFxuICAgICAgICAgIChvbkNsaWNrKT1cIm9uQ2FuY2VsKClcIiBcbiAgICAgICAgICB0ZXh0PVwiQ2FuY2VsXCJcbiAgICAgICAgICBjb2xvcj1cImRlZmF1bHRcIj5cbiAgICAgICAgPC9heC1idXR0b24+XG4gICAgICAgIDxheC1idXR0b24gXG4gICAgICAgICAgbG9vaz1cInNvbGlkXCIgXG4gICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCIgXG4gICAgICAgICAgKG9uQ2xpY2spPVwiaGFuZGxlU2F2ZShmb3JtKVwiIFxuICAgICAgICAgIHRleHQ9XCJTYXZlXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwibG9hZGluZygpXCI+XG4gICAgICAgICAgQGlmKGxvYWRpbmcoKSkge1xuICAgICAgICAgICAgPGF4LWxvYWRpbmc+PC9heC1sb2FkaW5nPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9heC1idXR0b24+XG4gICAgICA8L2F4LXN1ZmZpeD5cbiAgICA8L2F4LWZvb3Rlcj5cbiAgYCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBBWEJ1dHRvbk1vZHVsZSxcbiAgICBBWERlY29yYXRvck1vZHVsZSxcbiAgICBBWFRleHRCb3hNb2R1bGUsXG4gICAgQVhGb3JtTW9kdWxlLFxuICAgIEFYTGFiZWxNb2R1bGUsXG4gICAgQVhMb2FkaW5nTW9kdWxlLFxuICAgIEFYVHJhbnNsYXRpb25Nb2R1bGUsXG4gICAgQVhWYWxpZGF0aW9uTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQVhQRmlsZVJlbmFtZVBvcHVwQ29tcG9uZW50IGV4dGVuZHMgQVhCYXNlUGFnZUNvbXBvbmVudCB7XG4gIGZpbGVOYW1lID0gbW9kZWw8c3RyaW5nPignJyk7XG4gIGxvYWRpbmcgPSBzaWduYWwoZmFsc2UpO1xuICBcbiAgLy8gVGhpcyB3aWxsIGJlIHNldCBieSB0aGUgcG9wdXAgc2VydmljZSBhdXRvbWF0aWNhbGx5IGJhc2VkIG9uIGRhdGEuZmlsZVxuICBmaWxlITogQVhQRmlsZUxpc3RJdGVtO1xuXG4gIC8vIFRyYW5zbGF0aW9uIHNlcnZpY2VcbiAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhUcmFuc2xhdGlvblNlcnZpY2UpO1xuXG4gIC8vIEZpbGUgbmFtZSB2YWxpZGF0aW9uIHBhdHRlcm4gLSBleGNsdWRlcyBpbnZhbGlkIGNoYXJhY3RlcnMgZm9yIGZpbGUgbmFtZXNcbiAgcHJvdGVjdGVkIGZpbGVOYW1lUGF0dGVybiA9ICdeW148PjpcInw/KlxcXFwvXFxcXFxcXFxdKyQnO1xuXG4gIC8vIFZhbGlkYXRpb24gbWVzc2FnZXNcbiAgcHJvdGVjdGVkIHJlcXVpcmVkTWVzc2FnZSA9ICdGaWxlIG5hbWUgaXMgcmVxdWlyZWQnO1xuICBwcm90ZWN0ZWQgaW52YWxpZENoYXJzTWVzc2FnZSA9ICdGaWxlIG5hbWUgY29udGFpbnMgaW52YWxpZCBjaGFyYWN0ZXJzJztcbiAgcHJvdGVjdGVkIGludmFsaWRGb3JtYXRNZXNzYWdlID0gJ0ludmFsaWQgZmlsZSBuYW1lIGZvcm1hdCc7XG4gIHByb3RlY3RlZCBwbGFjZWhvbGRlclRleHQgPSAnRW50ZXIgZmlsZSBuYW1lJztcblxuICAvLyBDdXN0b20gdmFsaWRhdG9yIGZvciBmaWxlIG5hbWVcbiAgcHJvdGVjdGVkIHZhbGlkYXRlRmlsZU5hbWUgPSAodmFsdWU6IHN0cmluZyk6IGJvb2xlYW4gPT4ge1xuICAgIGlmICghdmFsdWUpIHJldHVybiBmYWxzZTtcbiAgICBcbiAgICAvLyBDaGVjayBpZiBzdGFydHMgb3IgZW5kcyB3aXRoIHNwYWNlIG9yIGRvdFxuICAgIGlmICh2YWx1ZS5zdGFydHNXaXRoKCcgJykgfHwgdmFsdWUuZW5kc1dpdGgoJyAnKSB8fCBcbiAgICAgICAgdmFsdWUuc3RhcnRzV2l0aCgnLicpIHx8IHZhbHVlLmVuZHNXaXRoKCcuJykpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQ2hlY2sgZm9yIHJlc2VydmVkIFdpbmRvd3MgZmlsZSBuYW1lc1xuICAgIGNvbnN0IHJlc2VydmVkTmFtZXMgPSBbJ0NPTicsICdQUk4nLCAnQVVYJywgJ05VTCcsICdDT00xJywgJ0NPTTInLCAnQ09NMycsICdDT000JywgJ0NPTTUnLCAnQ09NNicsICdDT003JywgJ0NPTTgnLCAnQ09NOScsICdMUFQxJywgJ0xQVDInLCAnTFBUMycsICdMUFQ0JywgJ0xQVDUnLCAnTFBUNicsICdMUFQ3JywgJ0xQVDgnLCAnTFBUOSddO1xuICAgIGNvbnN0IG5hbWVXaXRob3V0RXh0ZW5zaW9uID0gdmFsdWUuc3BsaXQoJy4nKVswXS50b1VwcGVyQ2FzZSgpO1xuICAgIGlmIChyZXNlcnZlZE5hbWVzLmluY2x1ZGVzKG5hbWVXaXRob3V0RXh0ZW5zaW9uKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfTtcblxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIC8vIFNldCBpbml0aWFsIGZpbGUgbmFtZSBmcm9tIHRoZSBmaWxlIHBhc3NlZCB0byBwb3B1cFxuICAgIGlmICh0aGlzLmZpbGU/Lm5hbWUpIHtcbiAgICAgIHRoaXMuZmlsZU5hbWUuc2V0KHRoaXMuZmlsZS5uYW1lKTtcbiAgICB9XG4gIH1cblxuICBvbkNhbmNlbCgpIHtcbiAgICB0aGlzLmNsb3NlKHtcbiAgICAgIHJlc3VsdDogZmFsc2VcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIGhhbmRsZVNhdmUoZm9ybTogQVhGb3JtQ29tcG9uZW50KSB7XG4gICAgY29uc3QgZm9ybVJlc3VsdCA9IGF3YWl0IGZvcm0udmFsaWRhdGUoKTtcbiAgICBpZiAoIWZvcm1SZXN1bHQucmVzdWx0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5sb2FkaW5nLnNldCh0cnVlKTtcbiAgICBcbiAgICB0cnkge1xuICAgICAgLy8gU2ltdWxhdGUgYSBicmllZiBsb2FkaW5nIHN0YXRlIGZvciBiZXR0ZXIgVVhcbiAgICAgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gc2V0VGltZW91dChyZXNvbHZlLCAzMDApKTtcbiAgICAgIFxuICAgICAgdGhpcy5jbG9zZSh7XG4gICAgICAgIHJlc3VsdDogdHJ1ZSxcbiAgICAgICAgZmlsZU5hbWU6IHRoaXMuZmlsZU5hbWUoKVxuICAgICAgfSk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMubG9hZGluZy5zZXQoZmFsc2UpO1xuICAgIH1cbiAgfVxufSAiXX0="],"names":["i2","i3","i4","i5","i6","i7","i8","i9"],"mappings":"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"}