@genexus/genexus-ide-ui 1.1.69 → 1.1.70

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.
@@ -104,8 +104,14 @@ const GxIdeBringAllChangesSelector = class {
104
104
  this.sinceCommitDate = sinceDate;
105
105
  });
106
106
  _GxIdeBringAllChangesSelector_handleCommitDateValueChanged.set(this, (event) => {
107
- this.sinceCommitDate =
108
- event.detail && event.detail !== "" ? new Date(event.detail) : undefined;
107
+ const value = event.detail;
108
+ if (value && value !== "") {
109
+ const [year, month, day] = value.split("-").map(Number);
110
+ this.sinceCommitDate = new Date(year, month - 1, day);
111
+ }
112
+ else {
113
+ this.sinceCommitDate = undefined;
114
+ }
109
115
  formValidation.clearControlError(this.validatableControls, "commit-date");
110
116
  });
111
117
  _GxIdeBringAllChangesSelector_handleCommitNumberValueChanged.set(this, (event) => {
@@ -1 +1 @@
1
- {"file":"gx-ide-team-dev-bring-all-changes-selector.entry.cjs.js","mappings":"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","names":["h","config","validateControls","clearControlError","Locale","Host"],"sources":["src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.scss?tag=gx-ide-team-dev-bring-all-changes-selector&encapsulation=shadow","src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: 1fr max-content;\n}\n\n.commit-date-container,\n.commit-number-container {\n display: grid;\n gap: 15px;\n}\n\n.commit-date-container {\n grid-template-rows: max-content max-content max-content max-content;\n}\n\n.commit-number-container {\n grid-template-rows: max-content max-content max-content;\n}\n\n.heading {\n margin-block: 0;\n}\n\n.tooltip {\n position: absolute;\n}\n","import { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\nimport {\n ChRadioGroupRenderCustomEvent,\n RadioGroupModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../components\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tooltip\"\n];\n\nconst MERGE_ACTION_OPTIONS = {\n fromCommitDate: {\n value: \"fromCommitDate\"\n },\n fromCommitNumber: {\n value: \"fromCommitNumber\"\n }\n};\n\n@Component({\n tag: \"gx-ide-team-dev-bring-all-changes-selector\",\n styleUrl: \"bring-all-changes-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-all-changes-selector\"]\n})\nexport class GxIdeBringAllChangesSelector {\n #componentLocale: any;\n #revisionNumberRef: HTMLChEditElement;\n #revisionDateRef: HTMLChEditElement;\n @Element() el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;\n /**\n * Date from which the commits will be merged\n */\n @State() sinceCommitDate: Date | undefined = undefined;\n\n /**\n * Number from which the commits will be merged\n */\n @State() sinceCommitNumber: number | undefined = undefined;\n\n /**\n * The selected option from the radio group.\n */\n @State() selectedOption: MergeActionTaken = MERGE_ACTION_OPTIONS\n .fromCommitDate.value as MergeActionTaken;\n\n /**\n * Model for the radio group.\n */\n @State() radioGroupModel: RadioGroupModel = [];\n\n /**\n * Map of validatable controls in the form.\n */\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback!: (\n selectedMergeActionData: SelectedMergeActionData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.radioGroupModel = [\n {\n value: MERGE_ACTION_OPTIONS.fromCommitDate.value,\n caption: this.#componentLocale.captions.commitDate\n },\n {\n value: MERGE_ACTION_OPTIONS.fromCommitNumber.value,\n caption: this.#componentLocale.captions.commitNumber\n }\n ];\n }\n\n componentDidRender() {\n if (this.selectedOption === \"fromCommitDate\" && this.#revisionDateRef) {\n this.#initializeValidatableControls([this.#revisionDateRef]);\n }\n\n if (this.selectedOption === \"fromCommitNumber\" && this.#revisionNumberRef) {\n this.#initializeValidatableControls([this.#revisionNumberRef]);\n }\n }\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #cancelClickHandler = async () => {\n await this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n let formSubmitResult: FormSubmitResult;\n const selectedMergeActionData: SelectedMergeActionData = {\n operationType: this.selectedOption,\n fromDate:\n this.selectedOption === \"fromCommitDate\"\n ? this.sinceCommitDate\n : undefined,\n fromRevision:\n this.selectedOption === \"fromCommitNumber\"\n ? this.sinceCommitNumber\n : undefined\n };\n formSubmitResult = await this.confirmCallback(selectedMergeActionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #handleLastDates = (lastDates: LastDates) => {\n const currentDate = new Date();\n let sinceDate = new Date();\n switch (lastDates) {\n case \"lastSevenDays\":\n sinceDate.setDate(currentDate.getDate() - 7);\n break;\n case \"lastThirtyDays\":\n sinceDate.setDate(currentDate.getDate() - 30);\n break;\n case \"lastNinetyDays\":\n sinceDate.setDate(currentDate.getDate() - 90);\n break;\n }\n this.sinceCommitDate = sinceDate;\n };\n\n #handleCommitDateValueChanged = (event: CustomEvent<string> | InputEvent) => {\n this.sinceCommitDate =\n event.detail && event.detail !== \"\" ? new Date(event.detail) : undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n };\n\n #handleCommitNumberValueChanged = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.sinceCommitNumber = Number(event.detail);\n clearControlError(this.validatableControls, \"commit-number\");\n };\n\n #handleRadioGroupValueChange = (\n event: ChRadioGroupRenderCustomEvent<string>\n ) => {\n this.selectedOption = event.detail as MergeActionTaken;\n if (this.selectedOption === \"fromCommitDate\") {\n this.sinceCommitNumber = undefined;\n clearControlError(this.validatableControls, \"commit-number\");\n } else if (this.selectedOption === \"fromCommitNumber\") {\n this.sinceCommitDate = undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n }\n };\n\n #confirmButtonDisabled = (): boolean => {\n if (this.selectedOption === \"fromCommitDate\") {\n // Validate that sinceCommitDate is a valid date\n return !(\n this.sinceCommitDate instanceof Date &&\n !isNaN(this.sinceCommitDate.getTime())\n );\n } else if (this.selectedOption === \"fromCommitNumber\") {\n // Validate that sinceCommitNumber is a valid number\n return !(this.sinceCommitNumber > 0);\n }\n return true;\n };\n\n #renderCommitDateInput = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-date\">\n {this.#componentLocale.labels.commitDate}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-date\")?.hasError\n }}\n id=\"commit-date\"\n type=\"date\"\n value={\n this.sinceCommitDate &&\n this.sinceCommitDate.toISOString().split(\"T\")[0]\n }\n onInput={this.#handleCommitDateValueChanged}\n ref={(el: HTMLChEditElement) =>\n (this.#revisionDateRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionDateRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderCommitNumberInput = () => {\n if (this.selectedOption !== \"fromCommitNumber\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-number\">\n {this.#componentLocale.labels.commitNumber}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-number\")?.hasError\n }}\n id=\"commit-number\"\n type=\"number\"\n placeholder={this.#componentLocale.placeholders.commitNumber}\n onInput={this.#handleCommitNumberValueChanged}\n mode=\"numeric\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionNumberRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionNumberRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderLastDatesButtons = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n\n return (\n <div class=\"layout layout--cols-3\">\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastSevenDays\")}\n >\n {this.#componentLocale.captions.lastSevenDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastThirtyDays\")}\n >\n {this.#componentLocale.captions.lastThirtyDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastNinetyDays\")}\n >\n {this.#componentLocale.captions.lastNinetyDays}\n </button>\n </div>\n </div>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div\n class={{\n \"spacing-body\": true,\n \"commit-date-container\": this.selectedOption === \"fromCommitDate\",\n \"commit-number-container\":\n this.selectedOption === \"fromCommitNumber\"\n }}\n >\n <p class=\"body-regular-m heading\">\n {this.#componentLocale.labels.selectRange}\n </p>\n <ch-radio-group-render\n class=\"radio-group\"\n direction=\"horizontal\"\n model={this.radioGroupModel}\n onChange={this.#handleRadioGroupValueChange}\n value={MERGE_ACTION_OPTIONS.fromCommitDate.value}\n />\n\n {this.#renderLastDatesButtons()}\n {this.#renderCommitDateInput()}\n {this.#renderCommitNumberInput()}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button class=\"button-secondary\" onClick={this.#cancelClickHandler}>\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={this.#confirmButtonDisabled()}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </Host>\n );\n }\n}\n\nexport type SelectedMergeActionData = {\n operationType: MergeActionTaken;\n fromDate?: Date;\n fromRevision?: number;\n};\n\nexport type MergeActionTaken = \"fromCommitDate\" | \"fromCommitNumber\";\n\nexport type LastDates = \"lastSevenDays\" | \"lastThirtyDays\" | \"lastNinetyDays\";\n"],"version":3}
1
+ {"file":"gx-ide-team-dev-bring-all-changes-selector.entry.cjs.js","mappings":"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","names":["h","config","validateControls","clearControlError","Locale","Host"],"sources":["src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.scss?tag=gx-ide-team-dev-bring-all-changes-selector&encapsulation=shadow","src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: 1fr max-content;\n}\n\n.commit-date-container,\n.commit-number-container {\n display: grid;\n gap: 15px;\n}\n\n.commit-date-container {\n grid-template-rows: max-content max-content max-content max-content;\n}\n\n.commit-number-container {\n grid-template-rows: max-content max-content max-content;\n}\n\n.heading {\n margin-block: 0;\n}\n\n.tooltip {\n position: absolute;\n}\n","import { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\nimport {\n ChRadioGroupRenderCustomEvent,\n RadioGroupModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../components\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tooltip\"\n];\n\nconst MERGE_ACTION_OPTIONS = {\n fromCommitDate: {\n value: \"fromCommitDate\"\n },\n fromCommitNumber: {\n value: \"fromCommitNumber\"\n }\n};\n\n@Component({\n tag: \"gx-ide-team-dev-bring-all-changes-selector\",\n styleUrl: \"bring-all-changes-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-all-changes-selector\"]\n})\nexport class GxIdeBringAllChangesSelector {\n #componentLocale: any;\n #revisionNumberRef: HTMLChEditElement;\n #revisionDateRef: HTMLChEditElement;\n @Element() el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;\n /**\n * Date from which the commits will be merged\n */\n @State() sinceCommitDate: Date | undefined = undefined;\n\n /**\n * Number from which the commits will be merged\n */\n @State() sinceCommitNumber: number | undefined = undefined;\n\n /**\n * The selected option from the radio group.\n */\n @State() selectedOption: MergeActionTaken = MERGE_ACTION_OPTIONS\n .fromCommitDate.value as MergeActionTaken;\n\n /**\n * Model for the radio group.\n */\n @State() radioGroupModel: RadioGroupModel = [];\n\n /**\n * Map of validatable controls in the form.\n */\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback!: (\n selectedMergeActionData: SelectedMergeActionData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.radioGroupModel = [\n {\n value: MERGE_ACTION_OPTIONS.fromCommitDate.value,\n caption: this.#componentLocale.captions.commitDate\n },\n {\n value: MERGE_ACTION_OPTIONS.fromCommitNumber.value,\n caption: this.#componentLocale.captions.commitNumber\n }\n ];\n }\n\n componentDidRender() {\n if (this.selectedOption === \"fromCommitDate\" && this.#revisionDateRef) {\n this.#initializeValidatableControls([this.#revisionDateRef]);\n }\n\n if (this.selectedOption === \"fromCommitNumber\" && this.#revisionNumberRef) {\n this.#initializeValidatableControls([this.#revisionNumberRef]);\n }\n }\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #cancelClickHandler = async () => {\n await this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n let formSubmitResult: FormSubmitResult;\n const selectedMergeActionData: SelectedMergeActionData = {\n operationType: this.selectedOption,\n fromDate:\n this.selectedOption === \"fromCommitDate\"\n ? this.sinceCommitDate\n : undefined,\n fromRevision:\n this.selectedOption === \"fromCommitNumber\"\n ? this.sinceCommitNumber\n : undefined\n };\n formSubmitResult = await this.confirmCallback(selectedMergeActionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #handleLastDates = (lastDates: LastDates) => {\n const currentDate = new Date();\n let sinceDate = new Date();\n switch (lastDates) {\n case \"lastSevenDays\":\n sinceDate.setDate(currentDate.getDate() - 7);\n break;\n case \"lastThirtyDays\":\n sinceDate.setDate(currentDate.getDate() - 30);\n break;\n case \"lastNinetyDays\":\n sinceDate.setDate(currentDate.getDate() - 90);\n break;\n }\n this.sinceCommitDate = sinceDate;\n };\n\n #handleCommitDateValueChanged = (event: CustomEvent<string> | InputEvent) => {\n const value = event.detail as string;\n if (value && value !== \"\") {\n const [year, month, day] = value.split(\"-\").map(Number);\n this.sinceCommitDate = new Date(year, month - 1, day);\n } else {\n this.sinceCommitDate = undefined;\n }\n clearControlError(this.validatableControls, \"commit-date\");\n };\n\n #handleCommitNumberValueChanged = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.sinceCommitNumber = Number(event.detail);\n clearControlError(this.validatableControls, \"commit-number\");\n };\n\n #handleRadioGroupValueChange = (\n event: ChRadioGroupRenderCustomEvent<string>\n ) => {\n this.selectedOption = event.detail as MergeActionTaken;\n if (this.selectedOption === \"fromCommitDate\") {\n this.sinceCommitNumber = undefined;\n clearControlError(this.validatableControls, \"commit-number\");\n } else if (this.selectedOption === \"fromCommitNumber\") {\n this.sinceCommitDate = undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n }\n };\n\n #confirmButtonDisabled = (): boolean => {\n if (this.selectedOption === \"fromCommitDate\") {\n // Validate that sinceCommitDate is a valid date\n return !(\n this.sinceCommitDate instanceof Date &&\n !isNaN(this.sinceCommitDate.getTime())\n );\n } else if (this.selectedOption === \"fromCommitNumber\") {\n // Validate that sinceCommitNumber is a valid number\n return !(this.sinceCommitNumber > 0);\n }\n return true;\n };\n\n #renderCommitDateInput = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-date\">\n {this.#componentLocale.labels.commitDate}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-date\")?.hasError\n }}\n id=\"commit-date\"\n type=\"date\"\n value={\n this.sinceCommitDate &&\n this.sinceCommitDate.toISOString().split(\"T\")[0]\n }\n onInput={this.#handleCommitDateValueChanged}\n ref={(el: HTMLChEditElement) =>\n (this.#revisionDateRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionDateRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderCommitNumberInput = () => {\n if (this.selectedOption !== \"fromCommitNumber\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-number\">\n {this.#componentLocale.labels.commitNumber}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-number\")?.hasError\n }}\n id=\"commit-number\"\n type=\"number\"\n placeholder={this.#componentLocale.placeholders.commitNumber}\n onInput={this.#handleCommitNumberValueChanged}\n mode=\"numeric\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionNumberRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionNumberRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderLastDatesButtons = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n\n return (\n <div class=\"layout layout--cols-3\">\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastSevenDays\")}\n >\n {this.#componentLocale.captions.lastSevenDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastThirtyDays\")}\n >\n {this.#componentLocale.captions.lastThirtyDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastNinetyDays\")}\n >\n {this.#componentLocale.captions.lastNinetyDays}\n </button>\n </div>\n </div>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div\n class={{\n \"spacing-body\": true,\n \"commit-date-container\": this.selectedOption === \"fromCommitDate\",\n \"commit-number-container\":\n this.selectedOption === \"fromCommitNumber\"\n }}\n >\n <p class=\"body-regular-m heading\">\n {this.#componentLocale.labels.selectRange}\n </p>\n <ch-radio-group-render\n class=\"radio-group\"\n direction=\"horizontal\"\n model={this.radioGroupModel}\n onChange={this.#handleRadioGroupValueChange}\n value={MERGE_ACTION_OPTIONS.fromCommitDate.value}\n />\n\n {this.#renderLastDatesButtons()}\n {this.#renderCommitDateInput()}\n {this.#renderCommitNumberInput()}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button class=\"button-secondary\" onClick={this.#cancelClickHandler}>\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={this.#confirmButtonDisabled()}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </Host>\n );\n }\n}\n\nexport type SelectedMergeActionData = {\n operationType: MergeActionTaken;\n fromDate?: Date;\n fromRevision?: number;\n};\n\nexport type MergeActionTaken = \"fromCommitDate\" | \"fromCommitNumber\";\n\nexport type LastDates = \"lastSevenDays\" | \"lastThirtyDays\" | \"lastNinetyDays\";\n"],"version":3}
@@ -96,8 +96,14 @@ export class GxIdeBringAllChangesSelector {
96
96
  this.sinceCommitDate = sinceDate;
97
97
  });
98
98
  _GxIdeBringAllChangesSelector_handleCommitDateValueChanged.set(this, (event) => {
99
- this.sinceCommitDate =
100
- event.detail && event.detail !== "" ? new Date(event.detail) : undefined;
99
+ const value = event.detail;
100
+ if (value && value !== "") {
101
+ const [year, month, day] = value.split("-").map(Number);
102
+ this.sinceCommitDate = new Date(year, month - 1, day);
103
+ }
104
+ else {
105
+ this.sinceCommitDate = undefined;
106
+ }
101
107
  clearControlError(this.validatableControls, "commit-date");
102
108
  });
103
109
  _GxIdeBringAllChangesSelector_handleCommitNumberValueChanged.set(this, (event) => {
@@ -1 +1 @@
1
- {"version":3,"file":"bring-all-changes-selector.js","sourceRoot":"","sources":["../../../../src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\nimport {\n ChRadioGroupRenderCustomEvent,\n RadioGroupModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../components\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tooltip\"\n];\n\nconst MERGE_ACTION_OPTIONS = {\n fromCommitDate: {\n value: \"fromCommitDate\"\n },\n fromCommitNumber: {\n value: \"fromCommitNumber\"\n }\n};\n\n@Component({\n tag: \"gx-ide-team-dev-bring-all-changes-selector\",\n styleUrl: \"bring-all-changes-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-all-changes-selector\"]\n})\nexport class GxIdeBringAllChangesSelector {\n #componentLocale: any;\n #revisionNumberRef: HTMLChEditElement;\n #revisionDateRef: HTMLChEditElement;\n @Element() el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;\n /**\n * Date from which the commits will be merged\n */\n @State() sinceCommitDate: Date | undefined = undefined;\n\n /**\n * Number from which the commits will be merged\n */\n @State() sinceCommitNumber: number | undefined = undefined;\n\n /**\n * The selected option from the radio group.\n */\n @State() selectedOption: MergeActionTaken = MERGE_ACTION_OPTIONS\n .fromCommitDate.value as MergeActionTaken;\n\n /**\n * Model for the radio group.\n */\n @State() radioGroupModel: RadioGroupModel = [];\n\n /**\n * Map of validatable controls in the form.\n */\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback!: (\n selectedMergeActionData: SelectedMergeActionData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.radioGroupModel = [\n {\n value: MERGE_ACTION_OPTIONS.fromCommitDate.value,\n caption: this.#componentLocale.captions.commitDate\n },\n {\n value: MERGE_ACTION_OPTIONS.fromCommitNumber.value,\n caption: this.#componentLocale.captions.commitNumber\n }\n ];\n }\n\n componentDidRender() {\n if (this.selectedOption === \"fromCommitDate\" && this.#revisionDateRef) {\n this.#initializeValidatableControls([this.#revisionDateRef]);\n }\n\n if (this.selectedOption === \"fromCommitNumber\" && this.#revisionNumberRef) {\n this.#initializeValidatableControls([this.#revisionNumberRef]);\n }\n }\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #cancelClickHandler = async () => {\n await this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n let formSubmitResult: FormSubmitResult;\n const selectedMergeActionData: SelectedMergeActionData = {\n operationType: this.selectedOption,\n fromDate:\n this.selectedOption === \"fromCommitDate\"\n ? this.sinceCommitDate\n : undefined,\n fromRevision:\n this.selectedOption === \"fromCommitNumber\"\n ? this.sinceCommitNumber\n : undefined\n };\n formSubmitResult = await this.confirmCallback(selectedMergeActionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #handleLastDates = (lastDates: LastDates) => {\n const currentDate = new Date();\n let sinceDate = new Date();\n switch (lastDates) {\n case \"lastSevenDays\":\n sinceDate.setDate(currentDate.getDate() - 7);\n break;\n case \"lastThirtyDays\":\n sinceDate.setDate(currentDate.getDate() - 30);\n break;\n case \"lastNinetyDays\":\n sinceDate.setDate(currentDate.getDate() - 90);\n break;\n }\n this.sinceCommitDate = sinceDate;\n };\n\n #handleCommitDateValueChanged = (event: CustomEvent<string> | InputEvent) => {\n this.sinceCommitDate =\n event.detail && event.detail !== \"\" ? new Date(event.detail) : undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n };\n\n #handleCommitNumberValueChanged = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.sinceCommitNumber = Number(event.detail);\n clearControlError(this.validatableControls, \"commit-number\");\n };\n\n #handleRadioGroupValueChange = (\n event: ChRadioGroupRenderCustomEvent<string>\n ) => {\n this.selectedOption = event.detail as MergeActionTaken;\n if (this.selectedOption === \"fromCommitDate\") {\n this.sinceCommitNumber = undefined;\n clearControlError(this.validatableControls, \"commit-number\");\n } else if (this.selectedOption === \"fromCommitNumber\") {\n this.sinceCommitDate = undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n }\n };\n\n #confirmButtonDisabled = (): boolean => {\n if (this.selectedOption === \"fromCommitDate\") {\n // Validate that sinceCommitDate is a valid date\n return !(\n this.sinceCommitDate instanceof Date &&\n !isNaN(this.sinceCommitDate.getTime())\n );\n } else if (this.selectedOption === \"fromCommitNumber\") {\n // Validate that sinceCommitNumber is a valid number\n return !(this.sinceCommitNumber > 0);\n }\n return true;\n };\n\n #renderCommitDateInput = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-date\">\n {this.#componentLocale.labels.commitDate}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-date\")?.hasError\n }}\n id=\"commit-date\"\n type=\"date\"\n value={\n this.sinceCommitDate &&\n this.sinceCommitDate.toISOString().split(\"T\")[0]\n }\n onInput={this.#handleCommitDateValueChanged}\n ref={(el: HTMLChEditElement) =>\n (this.#revisionDateRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionDateRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderCommitNumberInput = () => {\n if (this.selectedOption !== \"fromCommitNumber\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-number\">\n {this.#componentLocale.labels.commitNumber}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-number\")?.hasError\n }}\n id=\"commit-number\"\n type=\"number\"\n placeholder={this.#componentLocale.placeholders.commitNumber}\n onInput={this.#handleCommitNumberValueChanged}\n mode=\"numeric\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionNumberRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionNumberRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderLastDatesButtons = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n\n return (\n <div class=\"layout layout--cols-3\">\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastSevenDays\")}\n >\n {this.#componentLocale.captions.lastSevenDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastThirtyDays\")}\n >\n {this.#componentLocale.captions.lastThirtyDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastNinetyDays\")}\n >\n {this.#componentLocale.captions.lastNinetyDays}\n </button>\n </div>\n </div>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div\n class={{\n \"spacing-body\": true,\n \"commit-date-container\": this.selectedOption === \"fromCommitDate\",\n \"commit-number-container\":\n this.selectedOption === \"fromCommitNumber\"\n }}\n >\n <p class=\"body-regular-m heading\">\n {this.#componentLocale.labels.selectRange}\n </p>\n <ch-radio-group-render\n class=\"radio-group\"\n direction=\"horizontal\"\n model={this.radioGroupModel}\n onChange={this.#handleRadioGroupValueChange}\n value={MERGE_ACTION_OPTIONS.fromCommitDate.value}\n />\n\n {this.#renderLastDatesButtons()}\n {this.#renderCommitDateInput()}\n {this.#renderCommitNumberInput()}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button class=\"button-secondary\" onClick={this.#cancelClickHandler}>\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={this.#confirmButtonDisabled()}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </Host>\n );\n }\n}\n\nexport type SelectedMergeActionData = {\n operationType: MergeActionTaken;\n fromDate?: Date;\n fromRevision?: number;\n};\n\nexport type MergeActionTaken = \"fromCommitDate\" | \"fromCommitNumber\";\n\nexport type LastDates = \"lastSevenDays\" | \"lastThirtyDays\" | \"lastNinetyDays\";\n"]}
1
+ {"version":3,"file":"bring-all-changes-selector.js","sourceRoot":"","sources":["../../../../src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\nimport {\n ChRadioGroupRenderCustomEvent,\n RadioGroupModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../components\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tooltip\"\n];\n\nconst MERGE_ACTION_OPTIONS = {\n fromCommitDate: {\n value: \"fromCommitDate\"\n },\n fromCommitNumber: {\n value: \"fromCommitNumber\"\n }\n};\n\n@Component({\n tag: \"gx-ide-team-dev-bring-all-changes-selector\",\n styleUrl: \"bring-all-changes-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-all-changes-selector\"]\n})\nexport class GxIdeBringAllChangesSelector {\n #componentLocale: any;\n #revisionNumberRef: HTMLChEditElement;\n #revisionDateRef: HTMLChEditElement;\n @Element() el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;\n /**\n * Date from which the commits will be merged\n */\n @State() sinceCommitDate: Date | undefined = undefined;\n\n /**\n * Number from which the commits will be merged\n */\n @State() sinceCommitNumber: number | undefined = undefined;\n\n /**\n * The selected option from the radio group.\n */\n @State() selectedOption: MergeActionTaken = MERGE_ACTION_OPTIONS\n .fromCommitDate.value as MergeActionTaken;\n\n /**\n * Model for the radio group.\n */\n @State() radioGroupModel: RadioGroupModel = [];\n\n /**\n * Map of validatable controls in the form.\n */\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback!: (\n selectedMergeActionData: SelectedMergeActionData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.radioGroupModel = [\n {\n value: MERGE_ACTION_OPTIONS.fromCommitDate.value,\n caption: this.#componentLocale.captions.commitDate\n },\n {\n value: MERGE_ACTION_OPTIONS.fromCommitNumber.value,\n caption: this.#componentLocale.captions.commitNumber\n }\n ];\n }\n\n componentDidRender() {\n if (this.selectedOption === \"fromCommitDate\" && this.#revisionDateRef) {\n this.#initializeValidatableControls([this.#revisionDateRef]);\n }\n\n if (this.selectedOption === \"fromCommitNumber\" && this.#revisionNumberRef) {\n this.#initializeValidatableControls([this.#revisionNumberRef]);\n }\n }\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #cancelClickHandler = async () => {\n await this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n let formSubmitResult: FormSubmitResult;\n const selectedMergeActionData: SelectedMergeActionData = {\n operationType: this.selectedOption,\n fromDate:\n this.selectedOption === \"fromCommitDate\"\n ? this.sinceCommitDate\n : undefined,\n fromRevision:\n this.selectedOption === \"fromCommitNumber\"\n ? this.sinceCommitNumber\n : undefined\n };\n formSubmitResult = await this.confirmCallback(selectedMergeActionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #handleLastDates = (lastDates: LastDates) => {\n const currentDate = new Date();\n let sinceDate = new Date();\n switch (lastDates) {\n case \"lastSevenDays\":\n sinceDate.setDate(currentDate.getDate() - 7);\n break;\n case \"lastThirtyDays\":\n sinceDate.setDate(currentDate.getDate() - 30);\n break;\n case \"lastNinetyDays\":\n sinceDate.setDate(currentDate.getDate() - 90);\n break;\n }\n this.sinceCommitDate = sinceDate;\n };\n\n #handleCommitDateValueChanged = (event: CustomEvent<string> | InputEvent) => {\n const value = event.detail as string;\n if (value && value !== \"\") {\n const [year, month, day] = value.split(\"-\").map(Number);\n this.sinceCommitDate = new Date(year, month - 1, day);\n } else {\n this.sinceCommitDate = undefined;\n }\n clearControlError(this.validatableControls, \"commit-date\");\n };\n\n #handleCommitNumberValueChanged = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.sinceCommitNumber = Number(event.detail);\n clearControlError(this.validatableControls, \"commit-number\");\n };\n\n #handleRadioGroupValueChange = (\n event: ChRadioGroupRenderCustomEvent<string>\n ) => {\n this.selectedOption = event.detail as MergeActionTaken;\n if (this.selectedOption === \"fromCommitDate\") {\n this.sinceCommitNumber = undefined;\n clearControlError(this.validatableControls, \"commit-number\");\n } else if (this.selectedOption === \"fromCommitNumber\") {\n this.sinceCommitDate = undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n }\n };\n\n #confirmButtonDisabled = (): boolean => {\n if (this.selectedOption === \"fromCommitDate\") {\n // Validate that sinceCommitDate is a valid date\n return !(\n this.sinceCommitDate instanceof Date &&\n !isNaN(this.sinceCommitDate.getTime())\n );\n } else if (this.selectedOption === \"fromCommitNumber\") {\n // Validate that sinceCommitNumber is a valid number\n return !(this.sinceCommitNumber > 0);\n }\n return true;\n };\n\n #renderCommitDateInput = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-date\">\n {this.#componentLocale.labels.commitDate}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-date\")?.hasError\n }}\n id=\"commit-date\"\n type=\"date\"\n value={\n this.sinceCommitDate &&\n this.sinceCommitDate.toISOString().split(\"T\")[0]\n }\n onInput={this.#handleCommitDateValueChanged}\n ref={(el: HTMLChEditElement) =>\n (this.#revisionDateRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionDateRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderCommitNumberInput = () => {\n if (this.selectedOption !== \"fromCommitNumber\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-number\">\n {this.#componentLocale.labels.commitNumber}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-number\")?.hasError\n }}\n id=\"commit-number\"\n type=\"number\"\n placeholder={this.#componentLocale.placeholders.commitNumber}\n onInput={this.#handleCommitNumberValueChanged}\n mode=\"numeric\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionNumberRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionNumberRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderLastDatesButtons = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n\n return (\n <div class=\"layout layout--cols-3\">\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastSevenDays\")}\n >\n {this.#componentLocale.captions.lastSevenDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastThirtyDays\")}\n >\n {this.#componentLocale.captions.lastThirtyDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastNinetyDays\")}\n >\n {this.#componentLocale.captions.lastNinetyDays}\n </button>\n </div>\n </div>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div\n class={{\n \"spacing-body\": true,\n \"commit-date-container\": this.selectedOption === \"fromCommitDate\",\n \"commit-number-container\":\n this.selectedOption === \"fromCommitNumber\"\n }}\n >\n <p class=\"body-regular-m heading\">\n {this.#componentLocale.labels.selectRange}\n </p>\n <ch-radio-group-render\n class=\"radio-group\"\n direction=\"horizontal\"\n model={this.radioGroupModel}\n onChange={this.#handleRadioGroupValueChange}\n value={MERGE_ACTION_OPTIONS.fromCommitDate.value}\n />\n\n {this.#renderLastDatesButtons()}\n {this.#renderCommitDateInput()}\n {this.#renderCommitNumberInput()}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button class=\"button-secondary\" onClick={this.#cancelClickHandler}>\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={this.#confirmButtonDisabled()}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </Host>\n );\n }\n}\n\nexport type SelectedMergeActionData = {\n operationType: MergeActionTaken;\n fromDate?: Date;\n fromRevision?: number;\n};\n\nexport type MergeActionTaken = \"fromCommitDate\" | \"fromCommitNumber\";\n\nexport type LastDates = \"lastSevenDays\" | \"lastThirtyDays\" | \"lastNinetyDays\";\n"]}
@@ -102,8 +102,14 @@ const GxIdeBringAllChangesSelector = /*@__PURE__*/ proxyCustomElement(class GxId
102
102
  this.sinceCommitDate = sinceDate;
103
103
  });
104
104
  _GxIdeBringAllChangesSelector_handleCommitDateValueChanged.set(this, (event) => {
105
- this.sinceCommitDate =
106
- event.detail && event.detail !== "" ? new Date(event.detail) : undefined;
105
+ const value = event.detail;
106
+ if (value && value !== "") {
107
+ const [year, month, day] = value.split("-").map(Number);
108
+ this.sinceCommitDate = new Date(year, month - 1, day);
109
+ }
110
+ else {
111
+ this.sinceCommitDate = undefined;
112
+ }
107
113
  clearControlError(this.validatableControls, "commit-date");
108
114
  });
109
115
  _GxIdeBringAllChangesSelector_handleCommitNumberValueChanged.set(this, (event) => {
@@ -1 +1 @@
1
- {"file":"gx-ide-team-dev-bring-all-changes-selector.js","mappings":"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","names":[],"sources":["src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.scss?tag=gx-ide-team-dev-bring-all-changes-selector&encapsulation=shadow","src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: 1fr max-content;\n}\n\n.commit-date-container,\n.commit-number-container {\n display: grid;\n gap: 15px;\n}\n\n.commit-date-container {\n grid-template-rows: max-content max-content max-content max-content;\n}\n\n.commit-number-container {\n grid-template-rows: max-content max-content max-content;\n}\n\n.heading {\n margin-block: 0;\n}\n\n.tooltip {\n position: absolute;\n}\n","import { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\nimport {\n ChRadioGroupRenderCustomEvent,\n RadioGroupModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../components\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tooltip\"\n];\n\nconst MERGE_ACTION_OPTIONS = {\n fromCommitDate: {\n value: \"fromCommitDate\"\n },\n fromCommitNumber: {\n value: \"fromCommitNumber\"\n }\n};\n\n@Component({\n tag: \"gx-ide-team-dev-bring-all-changes-selector\",\n styleUrl: \"bring-all-changes-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-all-changes-selector\"]\n})\nexport class GxIdeBringAllChangesSelector {\n #componentLocale: any;\n #revisionNumberRef: HTMLChEditElement;\n #revisionDateRef: HTMLChEditElement;\n @Element() el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;\n /**\n * Date from which the commits will be merged\n */\n @State() sinceCommitDate: Date | undefined = undefined;\n\n /**\n * Number from which the commits will be merged\n */\n @State() sinceCommitNumber: number | undefined = undefined;\n\n /**\n * The selected option from the radio group.\n */\n @State() selectedOption: MergeActionTaken = MERGE_ACTION_OPTIONS\n .fromCommitDate.value as MergeActionTaken;\n\n /**\n * Model for the radio group.\n */\n @State() radioGroupModel: RadioGroupModel = [];\n\n /**\n * Map of validatable controls in the form.\n */\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback!: (\n selectedMergeActionData: SelectedMergeActionData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.radioGroupModel = [\n {\n value: MERGE_ACTION_OPTIONS.fromCommitDate.value,\n caption: this.#componentLocale.captions.commitDate\n },\n {\n value: MERGE_ACTION_OPTIONS.fromCommitNumber.value,\n caption: this.#componentLocale.captions.commitNumber\n }\n ];\n }\n\n componentDidRender() {\n if (this.selectedOption === \"fromCommitDate\" && this.#revisionDateRef) {\n this.#initializeValidatableControls([this.#revisionDateRef]);\n }\n\n if (this.selectedOption === \"fromCommitNumber\" && this.#revisionNumberRef) {\n this.#initializeValidatableControls([this.#revisionNumberRef]);\n }\n }\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #cancelClickHandler = async () => {\n await this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n let formSubmitResult: FormSubmitResult;\n const selectedMergeActionData: SelectedMergeActionData = {\n operationType: this.selectedOption,\n fromDate:\n this.selectedOption === \"fromCommitDate\"\n ? this.sinceCommitDate\n : undefined,\n fromRevision:\n this.selectedOption === \"fromCommitNumber\"\n ? this.sinceCommitNumber\n : undefined\n };\n formSubmitResult = await this.confirmCallback(selectedMergeActionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #handleLastDates = (lastDates: LastDates) => {\n const currentDate = new Date();\n let sinceDate = new Date();\n switch (lastDates) {\n case \"lastSevenDays\":\n sinceDate.setDate(currentDate.getDate() - 7);\n break;\n case \"lastThirtyDays\":\n sinceDate.setDate(currentDate.getDate() - 30);\n break;\n case \"lastNinetyDays\":\n sinceDate.setDate(currentDate.getDate() - 90);\n break;\n }\n this.sinceCommitDate = sinceDate;\n };\n\n #handleCommitDateValueChanged = (event: CustomEvent<string> | InputEvent) => {\n this.sinceCommitDate =\n event.detail && event.detail !== \"\" ? new Date(event.detail) : undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n };\n\n #handleCommitNumberValueChanged = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.sinceCommitNumber = Number(event.detail);\n clearControlError(this.validatableControls, \"commit-number\");\n };\n\n #handleRadioGroupValueChange = (\n event: ChRadioGroupRenderCustomEvent<string>\n ) => {\n this.selectedOption = event.detail as MergeActionTaken;\n if (this.selectedOption === \"fromCommitDate\") {\n this.sinceCommitNumber = undefined;\n clearControlError(this.validatableControls, \"commit-number\");\n } else if (this.selectedOption === \"fromCommitNumber\") {\n this.sinceCommitDate = undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n }\n };\n\n #confirmButtonDisabled = (): boolean => {\n if (this.selectedOption === \"fromCommitDate\") {\n // Validate that sinceCommitDate is a valid date\n return !(\n this.sinceCommitDate instanceof Date &&\n !isNaN(this.sinceCommitDate.getTime())\n );\n } else if (this.selectedOption === \"fromCommitNumber\") {\n // Validate that sinceCommitNumber is a valid number\n return !(this.sinceCommitNumber > 0);\n }\n return true;\n };\n\n #renderCommitDateInput = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-date\">\n {this.#componentLocale.labels.commitDate}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-date\")?.hasError\n }}\n id=\"commit-date\"\n type=\"date\"\n value={\n this.sinceCommitDate &&\n this.sinceCommitDate.toISOString().split(\"T\")[0]\n }\n onInput={this.#handleCommitDateValueChanged}\n ref={(el: HTMLChEditElement) =>\n (this.#revisionDateRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionDateRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderCommitNumberInput = () => {\n if (this.selectedOption !== \"fromCommitNumber\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-number\">\n {this.#componentLocale.labels.commitNumber}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-number\")?.hasError\n }}\n id=\"commit-number\"\n type=\"number\"\n placeholder={this.#componentLocale.placeholders.commitNumber}\n onInput={this.#handleCommitNumberValueChanged}\n mode=\"numeric\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionNumberRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionNumberRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderLastDatesButtons = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n\n return (\n <div class=\"layout layout--cols-3\">\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastSevenDays\")}\n >\n {this.#componentLocale.captions.lastSevenDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastThirtyDays\")}\n >\n {this.#componentLocale.captions.lastThirtyDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastNinetyDays\")}\n >\n {this.#componentLocale.captions.lastNinetyDays}\n </button>\n </div>\n </div>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div\n class={{\n \"spacing-body\": true,\n \"commit-date-container\": this.selectedOption === \"fromCommitDate\",\n \"commit-number-container\":\n this.selectedOption === \"fromCommitNumber\"\n }}\n >\n <p class=\"body-regular-m heading\">\n {this.#componentLocale.labels.selectRange}\n </p>\n <ch-radio-group-render\n class=\"radio-group\"\n direction=\"horizontal\"\n model={this.radioGroupModel}\n onChange={this.#handleRadioGroupValueChange}\n value={MERGE_ACTION_OPTIONS.fromCommitDate.value}\n />\n\n {this.#renderLastDatesButtons()}\n {this.#renderCommitDateInput()}\n {this.#renderCommitNumberInput()}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button class=\"button-secondary\" onClick={this.#cancelClickHandler}>\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={this.#confirmButtonDisabled()}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </Host>\n );\n }\n}\n\nexport type SelectedMergeActionData = {\n operationType: MergeActionTaken;\n fromDate?: Date;\n fromRevision?: number;\n};\n\nexport type MergeActionTaken = \"fromCommitDate\" | \"fromCommitNumber\";\n\nexport type LastDates = \"lastSevenDays\" | \"lastThirtyDays\" | \"lastNinetyDays\";\n"],"version":3}
1
+ {"file":"gx-ide-team-dev-bring-all-changes-selector.js","mappings":"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","names":[],"sources":["src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.scss?tag=gx-ide-team-dev-bring-all-changes-selector&encapsulation=shadow","src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: 1fr max-content;\n}\n\n.commit-date-container,\n.commit-number-container {\n display: grid;\n gap: 15px;\n}\n\n.commit-date-container {\n grid-template-rows: max-content max-content max-content max-content;\n}\n\n.commit-number-container {\n grid-template-rows: max-content max-content max-content;\n}\n\n.heading {\n margin-block: 0;\n}\n\n.tooltip {\n position: absolute;\n}\n","import { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\nimport {\n ChRadioGroupRenderCustomEvent,\n RadioGroupModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../components\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tooltip\"\n];\n\nconst MERGE_ACTION_OPTIONS = {\n fromCommitDate: {\n value: \"fromCommitDate\"\n },\n fromCommitNumber: {\n value: \"fromCommitNumber\"\n }\n};\n\n@Component({\n tag: \"gx-ide-team-dev-bring-all-changes-selector\",\n styleUrl: \"bring-all-changes-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-all-changes-selector\"]\n})\nexport class GxIdeBringAllChangesSelector {\n #componentLocale: any;\n #revisionNumberRef: HTMLChEditElement;\n #revisionDateRef: HTMLChEditElement;\n @Element() el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;\n /**\n * Date from which the commits will be merged\n */\n @State() sinceCommitDate: Date | undefined = undefined;\n\n /**\n * Number from which the commits will be merged\n */\n @State() sinceCommitNumber: number | undefined = undefined;\n\n /**\n * The selected option from the radio group.\n */\n @State() selectedOption: MergeActionTaken = MERGE_ACTION_OPTIONS\n .fromCommitDate.value as MergeActionTaken;\n\n /**\n * Model for the radio group.\n */\n @State() radioGroupModel: RadioGroupModel = [];\n\n /**\n * Map of validatable controls in the form.\n */\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback!: (\n selectedMergeActionData: SelectedMergeActionData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.radioGroupModel = [\n {\n value: MERGE_ACTION_OPTIONS.fromCommitDate.value,\n caption: this.#componentLocale.captions.commitDate\n },\n {\n value: MERGE_ACTION_OPTIONS.fromCommitNumber.value,\n caption: this.#componentLocale.captions.commitNumber\n }\n ];\n }\n\n componentDidRender() {\n if (this.selectedOption === \"fromCommitDate\" && this.#revisionDateRef) {\n this.#initializeValidatableControls([this.#revisionDateRef]);\n }\n\n if (this.selectedOption === \"fromCommitNumber\" && this.#revisionNumberRef) {\n this.#initializeValidatableControls([this.#revisionNumberRef]);\n }\n }\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #cancelClickHandler = async () => {\n await this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n let formSubmitResult: FormSubmitResult;\n const selectedMergeActionData: SelectedMergeActionData = {\n operationType: this.selectedOption,\n fromDate:\n this.selectedOption === \"fromCommitDate\"\n ? this.sinceCommitDate\n : undefined,\n fromRevision:\n this.selectedOption === \"fromCommitNumber\"\n ? this.sinceCommitNumber\n : undefined\n };\n formSubmitResult = await this.confirmCallback(selectedMergeActionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #handleLastDates = (lastDates: LastDates) => {\n const currentDate = new Date();\n let sinceDate = new Date();\n switch (lastDates) {\n case \"lastSevenDays\":\n sinceDate.setDate(currentDate.getDate() - 7);\n break;\n case \"lastThirtyDays\":\n sinceDate.setDate(currentDate.getDate() - 30);\n break;\n case \"lastNinetyDays\":\n sinceDate.setDate(currentDate.getDate() - 90);\n break;\n }\n this.sinceCommitDate = sinceDate;\n };\n\n #handleCommitDateValueChanged = (event: CustomEvent<string> | InputEvent) => {\n const value = event.detail as string;\n if (value && value !== \"\") {\n const [year, month, day] = value.split(\"-\").map(Number);\n this.sinceCommitDate = new Date(year, month - 1, day);\n } else {\n this.sinceCommitDate = undefined;\n }\n clearControlError(this.validatableControls, \"commit-date\");\n };\n\n #handleCommitNumberValueChanged = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.sinceCommitNumber = Number(event.detail);\n clearControlError(this.validatableControls, \"commit-number\");\n };\n\n #handleRadioGroupValueChange = (\n event: ChRadioGroupRenderCustomEvent<string>\n ) => {\n this.selectedOption = event.detail as MergeActionTaken;\n if (this.selectedOption === \"fromCommitDate\") {\n this.sinceCommitNumber = undefined;\n clearControlError(this.validatableControls, \"commit-number\");\n } else if (this.selectedOption === \"fromCommitNumber\") {\n this.sinceCommitDate = undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n }\n };\n\n #confirmButtonDisabled = (): boolean => {\n if (this.selectedOption === \"fromCommitDate\") {\n // Validate that sinceCommitDate is a valid date\n return !(\n this.sinceCommitDate instanceof Date &&\n !isNaN(this.sinceCommitDate.getTime())\n );\n } else if (this.selectedOption === \"fromCommitNumber\") {\n // Validate that sinceCommitNumber is a valid number\n return !(this.sinceCommitNumber > 0);\n }\n return true;\n };\n\n #renderCommitDateInput = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-date\">\n {this.#componentLocale.labels.commitDate}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-date\")?.hasError\n }}\n id=\"commit-date\"\n type=\"date\"\n value={\n this.sinceCommitDate &&\n this.sinceCommitDate.toISOString().split(\"T\")[0]\n }\n onInput={this.#handleCommitDateValueChanged}\n ref={(el: HTMLChEditElement) =>\n (this.#revisionDateRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionDateRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderCommitNumberInput = () => {\n if (this.selectedOption !== \"fromCommitNumber\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-number\">\n {this.#componentLocale.labels.commitNumber}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-number\")?.hasError\n }}\n id=\"commit-number\"\n type=\"number\"\n placeholder={this.#componentLocale.placeholders.commitNumber}\n onInput={this.#handleCommitNumberValueChanged}\n mode=\"numeric\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionNumberRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionNumberRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderLastDatesButtons = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n\n return (\n <div class=\"layout layout--cols-3\">\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastSevenDays\")}\n >\n {this.#componentLocale.captions.lastSevenDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastThirtyDays\")}\n >\n {this.#componentLocale.captions.lastThirtyDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastNinetyDays\")}\n >\n {this.#componentLocale.captions.lastNinetyDays}\n </button>\n </div>\n </div>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div\n class={{\n \"spacing-body\": true,\n \"commit-date-container\": this.selectedOption === \"fromCommitDate\",\n \"commit-number-container\":\n this.selectedOption === \"fromCommitNumber\"\n }}\n >\n <p class=\"body-regular-m heading\">\n {this.#componentLocale.labels.selectRange}\n </p>\n <ch-radio-group-render\n class=\"radio-group\"\n direction=\"horizontal\"\n model={this.radioGroupModel}\n onChange={this.#handleRadioGroupValueChange}\n value={MERGE_ACTION_OPTIONS.fromCommitDate.value}\n />\n\n {this.#renderLastDatesButtons()}\n {this.#renderCommitDateInput()}\n {this.#renderCommitNumberInput()}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button class=\"button-secondary\" onClick={this.#cancelClickHandler}>\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={this.#confirmButtonDisabled()}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </Host>\n );\n }\n}\n\nexport type SelectedMergeActionData = {\n operationType: MergeActionTaken;\n fromDate?: Date;\n fromRevision?: number;\n};\n\nexport type MergeActionTaken = \"fromCommitDate\" | \"fromCommitNumber\";\n\nexport type LastDates = \"lastSevenDays\" | \"lastThirtyDays\" | \"lastNinetyDays\";\n"],"version":3}
@@ -100,8 +100,14 @@ const GxIdeBringAllChangesSelector = class {
100
100
  this.sinceCommitDate = sinceDate;
101
101
  });
102
102
  _GxIdeBringAllChangesSelector_handleCommitDateValueChanged.set(this, (event) => {
103
- this.sinceCommitDate =
104
- event.detail && event.detail !== "" ? new Date(event.detail) : undefined;
103
+ const value = event.detail;
104
+ if (value && value !== "") {
105
+ const [year, month, day] = value.split("-").map(Number);
106
+ this.sinceCommitDate = new Date(year, month - 1, day);
107
+ }
108
+ else {
109
+ this.sinceCommitDate = undefined;
110
+ }
105
111
  clearControlError(this.validatableControls, "commit-date");
106
112
  });
107
113
  _GxIdeBringAllChangesSelector_handleCommitNumberValueChanged.set(this, (event) => {
@@ -1 +1 @@
1
- {"file":"gx-ide-team-dev-bring-all-changes-selector.entry.js","mappings":";;;;;AAAA,MAAM,0BAA0B,GAAG,2WAA2W;;;;;;;;;;;;;;;;;;;ACgB9Y,MAAM,WAAW,GAAmB;IAClC,mBAAmB;IACnB,YAAY;IACZ,eAAe;IACf,cAAc;IACd,qBAAqB;IACrB,mBAAmB;IACnB,iBAAiB;IACjB,wBAAwB;IACxB,oBAAoB;CACrB,CAAC;AAEF,MAAM,oBAAoB,GAAG;IAC3B,cAAc,EAAE;QACd,KAAK,EAAE,gBAAgB;KACxB;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,kBAAkB;KAC1B;CACF,CAAC;MAQW,4BAA4B;;;QACvC,gEAAsB;QACtB,kEAAsC;QACtC,gEAAoC;;;QAkEpC,8DAAyB,CACvB,gBAA6B;;YAE7B,OAAA,CAAA,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,GAAG,CAAC,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,EAAE,CAAC,0CAAE,QAAQ;iBAC7D,MAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC,0CAAE,OAAO,CAAA,KACxD,kBACE,KAAK,EAAC,SAAS,EACf,aAAa,EAAE,gBAAgD,EAC/D,UAAU,EAAE,MAAM,CAAC,eAAe,CAAC,UAAU,EAC7C,WAAW,EAAE,MAAM,CAAC,eAAe,CAAC,WAAW,EAC/C,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,KAAK,IAElC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,OAAO,CAC/C,CACd,CAAA;SAAA,EAAC;QAEJ,sEAAiC,CAAC,mBAAkC;YAClE,mBAAmB,CAAC,OAAO,CAAC,kBAAkB;gBAC5C,IACE,kBAAkB,CAAC,EAAE;oBACrB,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAC,EACpD;oBACA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,EAAE;wBAClD,SAAS,EAAE,kBAAkB;wBAC7B,QAAQ,EAAE,KAAK;wBACf,OAAO,EAAE,SAAS;qBACnB,CAAC,CAAC;iBACJ;aACF,CAAC,CAAC;SACJ,EAAC;QAEF,2DAAsB;YACpB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;SAC7B,EAAC;QAEF,4DAAuB;YACrB,IAAI,gBAAkC,CAAC;YACvC,MAAM,uBAAuB,GAA4B;gBACvD,aAAa,EAAE,IAAI,CAAC,cAAc;gBAClC,QAAQ,EACN,IAAI,CAAC,cAAc,KAAK,gBAAgB;sBACpC,IAAI,CAAC,eAAe;sBACpB,SAAS;gBACf,YAAY,EACV,IAAI,CAAC,cAAc,KAAK,kBAAkB;sBACtC,IAAI,CAAC,iBAAiB;sBACtB,SAAS;aAChB,CAAC;YACF,gBAAgB,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,uBAAuB,CAAC,CAAC;YACvE,IAAI,CAAC,mBAAmB,GAAG,gBAAgB,CACzC,gBAAgB,EAChB,IAAI,CAAC,mBAAmB,CACzB,CAAC;SACH,EAAC;QAEF,wDAAmB,CAAC,SAAoB;YACtC,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;YAC/B,IAAI,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;YAC3B,QAAQ,SAAS;gBACf,KAAK,eAAe;oBAClB,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC7C,MAAM;gBACR,KAAK,gBAAgB;oBACnB,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC9C,MAAM;gBACR,KAAK,gBAAgB;oBACnB,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC9C,MAAM;aACT;YACD,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;SAClC,EAAC;QAEF,qEAAgC,CAAC,KAAuC;YACtE,IAAI,CAAC,eAAe;gBAClB,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;YAC3E,iBAAiB,CAAC,IAAI,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;SAC5D,EAAC;QAEF,uEAAkC,CAChC,KAAuC;YAEvC,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC9C,iBAAiB,CAAC,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;SAC9D,EAAC;QAEF,oEAA+B,CAC7B,KAA4C;YAE5C,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,MAA0B,CAAC;YACvD,IAAI,IAAI,CAAC,cAAc,KAAK,gBAAgB,EAAE;gBAC5C,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;gBACnC,iBAAiB,CAAC,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;aAC9D;iBAAM,IAAI,IAAI,CAAC,cAAc,KAAK,kBAAkB,EAAE;gBACrD,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;gBACjC,iBAAiB,CAAC,IAAI,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;aAC5D;SACF,EAAC;QAEF,8DAAyB;YACvB,IAAI,IAAI,CAAC,cAAc,KAAK,gBAAgB,EAAE;;gBAE5C,OAAO,EACL,IAAI,CAAC,eAAe,YAAY,IAAI;oBACpC,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CACvC,CAAC;aACH;iBAAM,IAAI,IAAI,CAAC,cAAc,KAAK,kBAAkB,EAAE;;gBAErD,OAAO,EAAE,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;aACtC;YACD,OAAO,IAAI,CAAC;SACb,EAAC;QAEF,8DAAyB;;YACvB,IAAI,IAAI,CAAC,cAAc,KAAK,gBAAgB,EAAE;gBAC5C,OAAO,IAAI,CAAC;aACb;YACD,QACE,WAAK,KAAK,EAAC,yBAAyB,IAClC,WAAK,KAAK,EAAC,eAAe,IACxB,WAAK,KAAK,EAAC,mBAAmB,IAC5B,aAAO,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa,IACvC,uBAAA,IAAI,qDAAiB,CAAC,MAAM,CAAC,UAAU,CAClC,EACR,eACE,KAAK,EAAE;oBACL,OAAO,EAAE,IAAI;oBACb,aAAa,EACX,MAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,aAAa,CAAC,0CAAE,QAAQ;iBACxD,EACD,EAAE,EAAC,aAAa,EAChB,IAAI,EAAC,MAAM,EACX,KAAK,EACH,IAAI,CAAC,eAAe;oBACpB,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAElD,OAAO,EAAE,uBAAA,IAAI,kEAA8B,EAC3C,GAAG,EAAE,CAAC,EAAqB,MACxB,uBAAA,IAAI,iDAAoB,EAAuB,MAAA,CAAC,GAEnD,EACD,uBAAA,IAAI,2DAAuB,MAA3B,IAAI,EAAwB,uBAAA,IAAI,qDAAiB,CAAC,CAC/C,CACF,CACF,EACN;SACH,EAAC;QAEF,gEAA2B;;YACzB,IAAI,IAAI,CAAC,cAAc,KAAK,kBAAkB,EAAE;gBAC9C,OAAO,IAAI,CAAC;aACb;YACD,QACE,WAAK,KAAK,EAAC,yBAAyB,IAClC,WAAK,KAAK,EAAC,eAAe,IACxB,WAAK,KAAK,EAAC,mBAAmB,IAC5B,aAAO,KAAK,EAAC,OAAO,EAAC,OAAO,EAAC,eAAe,IACzC,uBAAA,IAAI,qDAAiB,CAAC,MAAM,CAAC,YAAY,CACpC,EACR,eACE,KAAK,EAAE;oBACL,OAAO,EAAE,IAAI;oBACb,aAAa,EACX,MAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,eAAe,CAAC,0CAAE,QAAQ;iBAC1D,EACD,EAAE,EAAC,eAAe,EAClB,IAAI,EAAC,QAAQ,EACb,WAAW,EAAE,uBAAA,IAAI,qDAAiB,CAAC,YAAY,CAAC,YAAY,EAC5D,OAAO,EAAE,uBAAA,IAAI,oEAAgC,EAC7C,IAAI,EAAC,SAAS,EACd,GAAG,EAAE,CAAC,EAAqB,MACxB,uBAAA,IAAI,mDAAsB,EAAuB,MAAA,CAAC,GAErD,EACD,uBAAA,IAAI,2DAAuB,MAA3B,IAAI,EAAwB,uBAAA,IAAI,uDAAmB,CAAC,CACjD,CACF,CACF,EACN;SACH,EAAC;QAEF,+DAA0B;YACxB,IAAI,IAAI,CAAC,cAAc,KAAK,gBAAgB,EAAE;gBAC5C,OAAO,IAAI,CAAC;aACb;YAED,QACE,WAAK,KAAK,EAAC,uBAAuB,IAChC,WAAK,KAAK,EAAC,eAAe,IACxB,cACE,KAAK,EAAC,kBAAkB,EACxB,OAAO,EAAE,MAAM,uBAAA,IAAI,qDAAiB,MAArB,IAAI,EAAkB,eAAe,CAAC,IAEpD,uBAAA,IAAI,qDAAiB,CAAC,QAAQ,CAAC,aAAa,CACtC,CACL,EACN,WAAK,KAAK,EAAC,eAAe,IACxB,cACE,KAAK,EAAC,kBAAkB,EACxB,OAAO,EAAE,MAAM,uBAAA,IAAI,qDAAiB,MAArB,IAAI,EAAkB,gBAAgB,CAAC,IAErD,uBAAA,IAAI,qDAAiB,CAAC,QAAQ,CAAC,cAAc,CACvC,CACL,EACN,WAAK,KAAK,EAAC,eAAe,IACxB,cACE,KAAK,EAAC,kBAAkB,EACxB,OAAO,EAAE,MAAM,uBAAA,IAAI,qDAAiB,MAArB,IAAI,EAAkB,gBAAgB,CAAC,IAErD,uBAAA,IAAI,qDAAiB,CAAC,QAAQ,CAAC,cAAc,CACvC,CACL,CACF,EACN;SACH,EAAC;+BAlR2C,SAAS;iCAKL,SAAS;8BAKd,oBAAoB;aAC7D,cAAc,CAAC,KAAyB;+BAKC,EAAE;mCAKf,IAAI,GAAG,EAA6B;;;;IAcnE,MAAM,iBAAiB;QACrB,uBAAA,IAAI,iDAAoB,MAAM,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAA,CAAC;QAClE,IAAI,CAAC,eAAe,GAAG;YACrB;gBACE,KAAK,EAAE,oBAAoB,CAAC,cAAc,CAAC,KAAK;gBAChD,OAAO,EAAE,uBAAA,IAAI,qDAAiB,CAAC,QAAQ,CAAC,UAAU;aACnD;YACD;gBACE,KAAK,EAAE,oBAAoB,CAAC,gBAAgB,CAAC,KAAK;gBAClD,OAAO,EAAE,uBAAA,IAAI,qDAAiB,CAAC,QAAQ,CAAC,YAAY;aACrD;SACF,CAAC;KACH;IAED,kBAAkB;QAChB,IAAI,IAAI,CAAC,cAAc,KAAK,gBAAgB,IAAI,uBAAA,IAAI,qDAAiB,EAAE;YACrE,uBAAA,IAAI,mEAA+B,MAAnC,IAAI,EAAgC,CAAC,uBAAA,IAAI,qDAAiB,CAAC,CAAC,CAAC;SAC9D;QAED,IAAI,IAAI,CAAC,cAAc,KAAK,kBAAkB,IAAI,uBAAA,IAAI,uDAAmB,EAAE;YACzE,uBAAA,IAAI,mEAA+B,MAAnC,IAAI,EAAgC,CAAC,uBAAA,IAAI,uDAAmB,CAAC,CAAC,CAAC;SAChE;KACF;IA2ND,MAAM;QACJ,QACE,EAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,IAClB,gBAAU,KAAK,EAAE,WAAW,GAAa,EACzC,WACE,KAAK,EAAE;gBACL,cAAc,EAAE,IAAI;gBACpB,uBAAuB,EAAE,IAAI,CAAC,cAAc,KAAK,gBAAgB;gBACjE,yBAAyB,EACvB,IAAI,CAAC,cAAc,KAAK,kBAAkB;aAC7C,IAED,SAAG,KAAK,EAAC,wBAAwB,IAC9B,uBAAA,IAAI,qDAAiB,CAAC,MAAM,CAAC,WAAW,CACvC,EACJ,6BACE,KAAK,EAAC,aAAa,EACnB,SAAS,EAAC,YAAY,EACtB,KAAK,EAAE,IAAI,CAAC,eAAe,EAC3B,QAAQ,EAAE,uBAAA,IAAI,iEAA6B,EAC3C,KAAK,EAAE,oBAAoB,CAAC,cAAc,CAAC,KAAK,GAChD,EAED,uBAAA,IAAI,4DAAwB,MAA5B,IAAI,CAA0B,EAC9B,uBAAA,IAAI,2DAAuB,MAA3B,IAAI,CAAyB,EAC7B,uBAAA,IAAI,6DAAyB,MAA7B,IAAI,CAA2B,CAC5B,EAEN,cAAQ,KAAK,EAAC,yCAAyC,IACrD,WAAK,KAAK,EAAC,gBAAgB,IACzB,cAAQ,KAAK,EAAC,kBAAkB,EAAC,OAAO,EAAE,uBAAA,IAAI,wDAAoB,IAC/D,uBAAA,IAAI,qDAAiB,CAAC,OAAO,CAAC,MAAM,CAC9B,EAET,cACE,KAAK,EAAC,gBAAgB,EACtB,OAAO,EAAE,uBAAA,IAAI,yDAAqB,EAClC,QAAQ,EAAE,uBAAA,IAAI,2DAAuB,MAA3B,IAAI,CAAyB,IAEtC,uBAAA,IAAI,qDAAiB,CAAC,OAAO,CAAC,OAAO,CAC/B,CACL,CACC,CACJ,EACP;KACH;;;;;;;;;","names":[],"sources":["src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.scss?tag=gx-ide-team-dev-bring-all-changes-selector&encapsulation=shadow","src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: 1fr max-content;\n}\n\n.commit-date-container,\n.commit-number-container {\n display: grid;\n gap: 15px;\n}\n\n.commit-date-container {\n grid-template-rows: max-content max-content max-content max-content;\n}\n\n.commit-number-container {\n grid-template-rows: max-content max-content max-content;\n}\n\n.heading {\n margin-block: 0;\n}\n\n.tooltip {\n position: absolute;\n}\n","import { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\nimport {\n ChRadioGroupRenderCustomEvent,\n RadioGroupModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../components\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tooltip\"\n];\n\nconst MERGE_ACTION_OPTIONS = {\n fromCommitDate: {\n value: \"fromCommitDate\"\n },\n fromCommitNumber: {\n value: \"fromCommitNumber\"\n }\n};\n\n@Component({\n tag: \"gx-ide-team-dev-bring-all-changes-selector\",\n styleUrl: \"bring-all-changes-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-all-changes-selector\"]\n})\nexport class GxIdeBringAllChangesSelector {\n #componentLocale: any;\n #revisionNumberRef: HTMLChEditElement;\n #revisionDateRef: HTMLChEditElement;\n @Element() el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;\n /**\n * Date from which the commits will be merged\n */\n @State() sinceCommitDate: Date | undefined = undefined;\n\n /**\n * Number from which the commits will be merged\n */\n @State() sinceCommitNumber: number | undefined = undefined;\n\n /**\n * The selected option from the radio group.\n */\n @State() selectedOption: MergeActionTaken = MERGE_ACTION_OPTIONS\n .fromCommitDate.value as MergeActionTaken;\n\n /**\n * Model for the radio group.\n */\n @State() radioGroupModel: RadioGroupModel = [];\n\n /**\n * Map of validatable controls in the form.\n */\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback!: (\n selectedMergeActionData: SelectedMergeActionData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.radioGroupModel = [\n {\n value: MERGE_ACTION_OPTIONS.fromCommitDate.value,\n caption: this.#componentLocale.captions.commitDate\n },\n {\n value: MERGE_ACTION_OPTIONS.fromCommitNumber.value,\n caption: this.#componentLocale.captions.commitNumber\n }\n ];\n }\n\n componentDidRender() {\n if (this.selectedOption === \"fromCommitDate\" && this.#revisionDateRef) {\n this.#initializeValidatableControls([this.#revisionDateRef]);\n }\n\n if (this.selectedOption === \"fromCommitNumber\" && this.#revisionNumberRef) {\n this.#initializeValidatableControls([this.#revisionNumberRef]);\n }\n }\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #cancelClickHandler = async () => {\n await this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n let formSubmitResult: FormSubmitResult;\n const selectedMergeActionData: SelectedMergeActionData = {\n operationType: this.selectedOption,\n fromDate:\n this.selectedOption === \"fromCommitDate\"\n ? this.sinceCommitDate\n : undefined,\n fromRevision:\n this.selectedOption === \"fromCommitNumber\"\n ? this.sinceCommitNumber\n : undefined\n };\n formSubmitResult = await this.confirmCallback(selectedMergeActionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #handleLastDates = (lastDates: LastDates) => {\n const currentDate = new Date();\n let sinceDate = new Date();\n switch (lastDates) {\n case \"lastSevenDays\":\n sinceDate.setDate(currentDate.getDate() - 7);\n break;\n case \"lastThirtyDays\":\n sinceDate.setDate(currentDate.getDate() - 30);\n break;\n case \"lastNinetyDays\":\n sinceDate.setDate(currentDate.getDate() - 90);\n break;\n }\n this.sinceCommitDate = sinceDate;\n };\n\n #handleCommitDateValueChanged = (event: CustomEvent<string> | InputEvent) => {\n this.sinceCommitDate =\n event.detail && event.detail !== \"\" ? new Date(event.detail) : undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n };\n\n #handleCommitNumberValueChanged = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.sinceCommitNumber = Number(event.detail);\n clearControlError(this.validatableControls, \"commit-number\");\n };\n\n #handleRadioGroupValueChange = (\n event: ChRadioGroupRenderCustomEvent<string>\n ) => {\n this.selectedOption = event.detail as MergeActionTaken;\n if (this.selectedOption === \"fromCommitDate\") {\n this.sinceCommitNumber = undefined;\n clearControlError(this.validatableControls, \"commit-number\");\n } else if (this.selectedOption === \"fromCommitNumber\") {\n this.sinceCommitDate = undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n }\n };\n\n #confirmButtonDisabled = (): boolean => {\n if (this.selectedOption === \"fromCommitDate\") {\n // Validate that sinceCommitDate is a valid date\n return !(\n this.sinceCommitDate instanceof Date &&\n !isNaN(this.sinceCommitDate.getTime())\n );\n } else if (this.selectedOption === \"fromCommitNumber\") {\n // Validate that sinceCommitNumber is a valid number\n return !(this.sinceCommitNumber > 0);\n }\n return true;\n };\n\n #renderCommitDateInput = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-date\">\n {this.#componentLocale.labels.commitDate}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-date\")?.hasError\n }}\n id=\"commit-date\"\n type=\"date\"\n value={\n this.sinceCommitDate &&\n this.sinceCommitDate.toISOString().split(\"T\")[0]\n }\n onInput={this.#handleCommitDateValueChanged}\n ref={(el: HTMLChEditElement) =>\n (this.#revisionDateRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionDateRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderCommitNumberInput = () => {\n if (this.selectedOption !== \"fromCommitNumber\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-number\">\n {this.#componentLocale.labels.commitNumber}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-number\")?.hasError\n }}\n id=\"commit-number\"\n type=\"number\"\n placeholder={this.#componentLocale.placeholders.commitNumber}\n onInput={this.#handleCommitNumberValueChanged}\n mode=\"numeric\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionNumberRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionNumberRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderLastDatesButtons = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n\n return (\n <div class=\"layout layout--cols-3\">\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastSevenDays\")}\n >\n {this.#componentLocale.captions.lastSevenDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastThirtyDays\")}\n >\n {this.#componentLocale.captions.lastThirtyDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastNinetyDays\")}\n >\n {this.#componentLocale.captions.lastNinetyDays}\n </button>\n </div>\n </div>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div\n class={{\n \"spacing-body\": true,\n \"commit-date-container\": this.selectedOption === \"fromCommitDate\",\n \"commit-number-container\":\n this.selectedOption === \"fromCommitNumber\"\n }}\n >\n <p class=\"body-regular-m heading\">\n {this.#componentLocale.labels.selectRange}\n </p>\n <ch-radio-group-render\n class=\"radio-group\"\n direction=\"horizontal\"\n model={this.radioGroupModel}\n onChange={this.#handleRadioGroupValueChange}\n value={MERGE_ACTION_OPTIONS.fromCommitDate.value}\n />\n\n {this.#renderLastDatesButtons()}\n {this.#renderCommitDateInput()}\n {this.#renderCommitNumberInput()}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button class=\"button-secondary\" onClick={this.#cancelClickHandler}>\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={this.#confirmButtonDisabled()}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </Host>\n );\n }\n}\n\nexport type SelectedMergeActionData = {\n operationType: MergeActionTaken;\n fromDate?: Date;\n fromRevision?: number;\n};\n\nexport type MergeActionTaken = \"fromCommitDate\" | \"fromCommitNumber\";\n\nexport type LastDates = \"lastSevenDays\" | \"lastThirtyDays\" | \"lastNinetyDays\";\n"],"version":3}
1
+ {"file":"gx-ide-team-dev-bring-all-changes-selector.entry.js","mappings":"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","names":[],"sources":["src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.scss?tag=gx-ide-team-dev-bring-all-changes-selector&encapsulation=shadow","src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: 1fr max-content;\n}\n\n.commit-date-container,\n.commit-number-container {\n display: grid;\n gap: 15px;\n}\n\n.commit-date-container {\n grid-template-rows: max-content max-content max-content max-content;\n}\n\n.commit-number-container {\n grid-template-rows: max-content max-content max-content;\n}\n\n.heading {\n margin-block: 0;\n}\n\n.tooltip {\n position: absolute;\n}\n","import { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\nimport {\n ChRadioGroupRenderCustomEvent,\n RadioGroupModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../components\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tooltip\"\n];\n\nconst MERGE_ACTION_OPTIONS = {\n fromCommitDate: {\n value: \"fromCommitDate\"\n },\n fromCommitNumber: {\n value: \"fromCommitNumber\"\n }\n};\n\n@Component({\n tag: \"gx-ide-team-dev-bring-all-changes-selector\",\n styleUrl: \"bring-all-changes-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-all-changes-selector\"]\n})\nexport class GxIdeBringAllChangesSelector {\n #componentLocale: any;\n #revisionNumberRef: HTMLChEditElement;\n #revisionDateRef: HTMLChEditElement;\n @Element() el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;\n /**\n * Date from which the commits will be merged\n */\n @State() sinceCommitDate: Date | undefined = undefined;\n\n /**\n * Number from which the commits will be merged\n */\n @State() sinceCommitNumber: number | undefined = undefined;\n\n /**\n * The selected option from the radio group.\n */\n @State() selectedOption: MergeActionTaken = MERGE_ACTION_OPTIONS\n .fromCommitDate.value as MergeActionTaken;\n\n /**\n * Model for the radio group.\n */\n @State() radioGroupModel: RadioGroupModel = [];\n\n /**\n * Map of validatable controls in the form.\n */\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback!: (\n selectedMergeActionData: SelectedMergeActionData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.radioGroupModel = [\n {\n value: MERGE_ACTION_OPTIONS.fromCommitDate.value,\n caption: this.#componentLocale.captions.commitDate\n },\n {\n value: MERGE_ACTION_OPTIONS.fromCommitNumber.value,\n caption: this.#componentLocale.captions.commitNumber\n }\n ];\n }\n\n componentDidRender() {\n if (this.selectedOption === \"fromCommitDate\" && this.#revisionDateRef) {\n this.#initializeValidatableControls([this.#revisionDateRef]);\n }\n\n if (this.selectedOption === \"fromCommitNumber\" && this.#revisionNumberRef) {\n this.#initializeValidatableControls([this.#revisionNumberRef]);\n }\n }\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #cancelClickHandler = async () => {\n await this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n let formSubmitResult: FormSubmitResult;\n const selectedMergeActionData: SelectedMergeActionData = {\n operationType: this.selectedOption,\n fromDate:\n this.selectedOption === \"fromCommitDate\"\n ? this.sinceCommitDate\n : undefined,\n fromRevision:\n this.selectedOption === \"fromCommitNumber\"\n ? this.sinceCommitNumber\n : undefined\n };\n formSubmitResult = await this.confirmCallback(selectedMergeActionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #handleLastDates = (lastDates: LastDates) => {\n const currentDate = new Date();\n let sinceDate = new Date();\n switch (lastDates) {\n case \"lastSevenDays\":\n sinceDate.setDate(currentDate.getDate() - 7);\n break;\n case \"lastThirtyDays\":\n sinceDate.setDate(currentDate.getDate() - 30);\n break;\n case \"lastNinetyDays\":\n sinceDate.setDate(currentDate.getDate() - 90);\n break;\n }\n this.sinceCommitDate = sinceDate;\n };\n\n #handleCommitDateValueChanged = (event: CustomEvent<string> | InputEvent) => {\n const value = event.detail as string;\n if (value && value !== \"\") {\n const [year, month, day] = value.split(\"-\").map(Number);\n this.sinceCommitDate = new Date(year, month - 1, day);\n } else {\n this.sinceCommitDate = undefined;\n }\n clearControlError(this.validatableControls, \"commit-date\");\n };\n\n #handleCommitNumberValueChanged = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.sinceCommitNumber = Number(event.detail);\n clearControlError(this.validatableControls, \"commit-number\");\n };\n\n #handleRadioGroupValueChange = (\n event: ChRadioGroupRenderCustomEvent<string>\n ) => {\n this.selectedOption = event.detail as MergeActionTaken;\n if (this.selectedOption === \"fromCommitDate\") {\n this.sinceCommitNumber = undefined;\n clearControlError(this.validatableControls, \"commit-number\");\n } else if (this.selectedOption === \"fromCommitNumber\") {\n this.sinceCommitDate = undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n }\n };\n\n #confirmButtonDisabled = (): boolean => {\n if (this.selectedOption === \"fromCommitDate\") {\n // Validate that sinceCommitDate is a valid date\n return !(\n this.sinceCommitDate instanceof Date &&\n !isNaN(this.sinceCommitDate.getTime())\n );\n } else if (this.selectedOption === \"fromCommitNumber\") {\n // Validate that sinceCommitNumber is a valid number\n return !(this.sinceCommitNumber > 0);\n }\n return true;\n };\n\n #renderCommitDateInput = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-date\">\n {this.#componentLocale.labels.commitDate}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-date\")?.hasError\n }}\n id=\"commit-date\"\n type=\"date\"\n value={\n this.sinceCommitDate &&\n this.sinceCommitDate.toISOString().split(\"T\")[0]\n }\n onInput={this.#handleCommitDateValueChanged}\n ref={(el: HTMLChEditElement) =>\n (this.#revisionDateRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionDateRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderCommitNumberInput = () => {\n if (this.selectedOption !== \"fromCommitNumber\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-number\">\n {this.#componentLocale.labels.commitNumber}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-number\")?.hasError\n }}\n id=\"commit-number\"\n type=\"number\"\n placeholder={this.#componentLocale.placeholders.commitNumber}\n onInput={this.#handleCommitNumberValueChanged}\n mode=\"numeric\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionNumberRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionNumberRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderLastDatesButtons = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n\n return (\n <div class=\"layout layout--cols-3\">\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastSevenDays\")}\n >\n {this.#componentLocale.captions.lastSevenDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastThirtyDays\")}\n >\n {this.#componentLocale.captions.lastThirtyDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastNinetyDays\")}\n >\n {this.#componentLocale.captions.lastNinetyDays}\n </button>\n </div>\n </div>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div\n class={{\n \"spacing-body\": true,\n \"commit-date-container\": this.selectedOption === \"fromCommitDate\",\n \"commit-number-container\":\n this.selectedOption === \"fromCommitNumber\"\n }}\n >\n <p class=\"body-regular-m heading\">\n {this.#componentLocale.labels.selectRange}\n </p>\n <ch-radio-group-render\n class=\"radio-group\"\n direction=\"horizontal\"\n model={this.radioGroupModel}\n onChange={this.#handleRadioGroupValueChange}\n value={MERGE_ACTION_OPTIONS.fromCommitDate.value}\n />\n\n {this.#renderLastDatesButtons()}\n {this.#renderCommitDateInput()}\n {this.#renderCommitNumberInput()}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button class=\"button-secondary\" onClick={this.#cancelClickHandler}>\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={this.#confirmButtonDisabled()}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </Host>\n );\n }\n}\n\nexport type SelectedMergeActionData = {\n operationType: MergeActionTaken;\n fromDate?: Date;\n fromRevision?: number;\n};\n\nexport type MergeActionTaken = \"fromCommitDate\" | \"fromCommitNumber\";\n\nexport type LastDates = \"lastSevenDays\" | \"lastThirtyDays\" | \"lastNinetyDays\";\n"],"version":3}
@@ -13,5 +13,5 @@ export { s as setNonce } from "./p-9b9ccd0c.js";
13
13
  return e(t);
14
14
  };
15
15
 
16
- patchBrowser().then((e => a(JSON.parse('[["p-214ddb11",[[1,"gx-ide-bpm-export-xpdl",{"displayTitle":[4,"display-title"],"exportCallback":[16],"cancelCallback":[16],"addCallback":[16],"referencesCallback":[16],"emptyInput":[32],"emptyObjects":[32],"notExporting":[32]}]]],["p-f9403b49",[[1,"gx-ide-bpm-import-files",{"displayTitle":[4,"display-title"],"allowedExtensions":[16],"confirmCallback":[16],"cancelCallback":[16],"files":[32],"selectedFiles":[32]}]]],["p-e3b91ab9",[[1,"gx-ide-kb-manager-import",{"cancelCallback":[16],"importCallback":[16],"loadCallback":[16],"objectContextMenuCallback":[16],"optionsCallback":[16],"selectedFile":[1040],"statusMinimal":[4,"status-minimal"],"selectAllCheckboxValue":[32],"selectAllCheckboxIndeterminate":[32],"importStatusMessage":[32],"importTreeState":[32],"importedTreeFilterRegExp":[32],"importingIsInProcess":[32],"importTreeFilterList":[32],"noImport":[32],"noObjects":[32],"objectsTreeModel":[32],"showHiddenImportsMessage":[32],"someStatusVisible":[32],"statusInfo":[32],"addResultItem":[64]},null,{"importTreeState":["importTreeStateChanged","watchImportTreeStateHandler"],"objectsTreeModel":["watchObjectsTreeModelHandler"],"selectedFile":["selectedFileChanged"]}]]],["p-2c3edc89",[[1,"gx-ide-launchpad",{"data":[1],"isStandalone":[4,"is-standalone"],"sections":[32],"tabModel":[32],"suspendShortcuts":[64]},null,{"data":["watchDataHandler"]}]]],["p-dc2a6f77",[[1,"gx-ide-team-dev-select-recent-comment",{"displayTitle":[4,"display-title"],"comments":[16],"confirmCallback":[16],"cancelCallback":[16]}]]],["p-d7c133da",[[17,"gx-ide-data-selector",{"cancelCallback":[16],"confirmCallback":[16],"defaultModule":[16],"displayTitle":[4,"display-title"],"editCallback":[16],"loadItemsCallback":[16],"loader":[4],"newVariableCallback":[16],"selectObjectCallback":[16],"selectionType":[1,"selection-type"],"loading":[32],"objects":[32],"selectedObjectsIds":[32],"suspendShortcuts":[64],"validate":[64]}]]],["p-29ac6b13",[[1,"gx-ide-manage-module-references",{"autoCloseProgressBar":[4,"auto-close-progress-bar"],"executeActionCallback":[16],"serverContextMenuCallback":[16],"serverSelectedCallback":[16],"servers":[16],"showServerCommands":[4,"show-server-commands"],"actionInProgress":[32],"executeActionCallbackInProgress":[32],"filteredModules":[32],"loadingServer":[32],"modulesAll":[32],"progressState":[32],"progressValue":[32],"reRenderCounter":[32],"selectedModuleAction":[32],"selectedModuleId":[32],"selectedModuleType":[32],"selectedServerId":[32],"selectedServerValue":[32],"serversComboBoxModel":[32],"selectedModuleVersions":[32]},[[0,"progressBarClosed","progressBarClosedHandler"]],{"modulesAll":["modulesAllChanged"],"servers":["serversChanged"]}]]],["p-e259472a",[[1,"gx-ide-navigation-report",{"headerData":[16],"confirmCallback":[16],"cancelCallback":[16],"closeCallback":[16],"itemSelectedCallback":[16],"reportTreeItems":[32],"navigationItemsStatusRegExpString":[32],"navigationItemsCaptionRegExpString":[32],"navigationItemsRegExp":[32],"confirmed":[32],"headerState":[32],"statusInfo":[32],"someStatusVisible":[32],"addItem":[64],"clearItems":[64]},null,{"navigationItemsStatusRegExpString":["navigationItemsStatusRegExpStringChanged"],"navigationItemsCaptionRegExpString":["navigationItemsCaptionRegExpStringChanged"]}]]],["p-1107bf84",[[17,"gx-ide-object-selector",{"cancelCallback":[16],"categories":[16],"defaultCategory":[1,"default-category"],"defaultModule":[16],"defaultType":[1,"default-type"],"loader":[4],"loadCallback":[16],"multiSelection":[4,"multi-selection"],"newObjectCallback":[16],"openSelectionCallback":[16],"patternValue":[1,"pattern-value"],"selectModuleCallback":[16],"types":[16],"filterModified":[32],"loading":[32],"modifiedAfterValue":[32],"objects":[32],"selectedObjectsIdsArray":[32],"suspendShortcuts":[64],"validate":[64]}]]],["p-85cf50c5",[[1,"gx-ide-team-dev-history",{"types":[16],"itemContextMenuCallback":[16],"gridContextMenuCallback":[16],"selectedVersionId":[1025,"selected-version-id"],"versions":[1040],"loadCallback":[16],"loadDetailCallback":[16],"selectedVersionChangeCallback":[16],"historyDetail":[32],"objects":[32],"isFirstLoad":[32],"sidebarExpanded":[32],"filtersHidden":[32],"loading":[32],"selectedRevisionId":[32],"hasActiveVersion":[32]},null,{"selectedVersionId":["selectedVersionIdChanged"],"versions":["versionsListChanged"]}]]],["p-086de552",[[1,"gx-ide-ww-attributes",{"contextMenuCallback":[16],"deleteSelectionCallback":[16],"loadCallback":[16],"objectActionCallback":[16],"objects":[16],"openSelectionCallback":[16],"selectionChangeCallback":[16],"types":[16],"attributes":[32],"selectedAttributesIds":[32],"filterMore":[32],"name":[32],"loading":[32],"object":[32],"type":[32],"reload":[64],"validate":[64]},[[1,"keydown","keyDownHandler"]]]]],["p-349f1622",[[1,"gx-ide-ww-files",{"categories":[16],"contextMenuCallback":[16],"defaultCategory":[1,"default-category"],"defaultModule":[16],"deleteSelectionCallback":[16],"gridColumnsVisibility":[16],"loadCallback":[16],"newFileCallback":[16],"openSelectionCallback":[16],"selectModuleCallback":[16],"selectionChangeCallback":[16],"showSearchContents":[4,"show-search-contents"],"afterValue":[32],"categoriesComboBoxModel":[32],"dateTimeValue":[32],"isLoading":[32],"filterAfterComboBoxModel":[32],"showModified":[32],"objects":[32],"reload":[64]},[[1,"keydown","keyDownHandler"]],{"dateTimeValue":["dateTimeValueChanged"],"categories":["categoriesChanged"]}]]],["p-8f2f8995",[[1,"gx-ide-ww-images",{"displayTitle":[4,"display-title"],"secondaryFilter":[4,"secondary-filter"],"categories":[16],"densities":[16],"defaultCategory":[1,"default-category"],"defaultModule":[16],"defaultType":[1,"default-type"],"filterModules":[16],"languages":[16],"layers":[16],"contextMenuCallback":[16],"deleteSelectionCallback":[16],"loadCallback":[16],"loadImageItemsCallback":[16],"newObjectCallback":[16],"openSelectionCallback":[16],"selectModuleCallback":[16],"selectionObjectChangedCallback":[16],"shadow":[4],"styles":[16],"types":[16],"filtersHidden":[32],"filterAfterType":[32],"filterModified":[32],"images":[32],"filteredImages":[32],"imagesSelectedItems":[32],"selectedObjectsIds":[32],"filterImagesInputValue":[32],"validate":[64],"reload":[64]},[[1,"keydown","keyDownHandler"]],{"filtersHidden":["filtersHiddenHandler"]}]]],["p-75925cee",[[1,"gx-ide-bpm-assign-roles",{"displayTitle":[4,"display-title"],"roles":[16],"assignedRoles":[16],"confirmCallback":[16],"cancelCallback":[16],"unassignedRolesState":[32],"assignedRolesState":[32],"filterUnassignedInput":[32],"filterAssignedInput":[32],"unassignedSelected":[32],"assignedSelected":[32]}]]],["p-33aeb361",[[1,"gx-ide-bpm-import-gxpm",{"displayTitle":[4,"display-title"],"confirmCallback":[16],"cancelCallback":[16],"selectedFile":[32],"pathValue":[32]}]]],["p-074d2bcf",[[1,"gx-ide-bpm-timer-duration",{"displayTitle":[4,"display-title"],"duration":[16],"confirmCallback":[16],"cancelCallback":[16]}]]],["p-93e79d19",[[1,"gx-ide-create-kb-from-server",{"connectionData":[16],"cancelCallback":[16],"changeConnectionCallback":[16],"createKBCallback":[16],"getGXserverKBsCallback":[16],"selectKBVersionsCallback":[16],"enableSelectVersionsButton":[32],"localKbNameInputValue":[32],"loading":[32],"filterValue":[32],"kbsFilteredActionListModel":[32],"validatableControls":[32],"versionSelectedType":[32],"versionsValueInput":[32]}]]],["p-2c0f10bf",[[1,"gx-ide-design-import",{"reactiveSettings":[16],"extensions":[16],"defaultModule":[16],"path":[1025],"accessToken":[1025,"access-token"],"importAsWebPanels":[4,"import-as-web-panels"],"selectModuleCallback":[16],"cancelCallback":[16],"confirmCallback":[16],"loadCallback":[16],"loadDesignSystemCallback":[16],"loadFontCallback":[16],"loadImageCallback":[16],"loadPanelDataCallback":[16],"requiresAccessTokenCallback":[16],"styles":[16],"textEditorFactoryCallback":[16],"reRenderCounter":[32],"stylesAsComboBoxModel":[32],"styleValue":[32],"accessTokenHasError":[32],"pathIsValid":[32],"tabsModel":[32],"activeTabs":[32],"renderedTabs":[32],"designData":[32],"detailTreeModel":[32],"isLoading":[32],"isLoaded":[32],"messages":[32],"selectedFile":[32],"selectedDesignType":[32],"selectedDesignItem":[32],"requiresAccessToken":[32],"designDataTreeDataModel":[32],"updateTabsActiveTab":[32],"fitImages":[32],"lastLoadCallbackSettingValues":[32]},null,{"pathIsValid":["pathIsValidChanged"],"designData":["designDataChanged"],"path":["pathChanged"],"accessToken":["accessTokenChanged"],"styles":["stylesChanged"],"messages":["watchMessagesHandler"]}]]],["p-9da12c9e",[[1,"gx-ide-kb-manager-export",{"addKBPropertiesCallback":[16],"addObjectsCallback":[16],"addReferencesCallback":[16],"cancelCallback":[16],"exportCallback":[16],"exportFileDirectoryCallback":[16],"fileName":[1,"file-name"],"kbPropertiesTypes":[16],"loader":[4],"objectTypes":[16],"optionsCallback":[16],"addKbPropertiesIsChecked":[32],"atLeastOnePropertyItemIsChecked":[32],"atLeastOneObjectItemIsChecked":[32],"checkedObjectsIds":[32],"checkedPropertiesIds":[32],"exportAllIsChecked":[32],"exportingIsInProcess":[32],"hasObjects":[32],"objectsTreeViewModel":[32]},null,{"objectsTreeViewModel":["objectsTreeViewModelChanged"],"objectTypes":["objectTypesChanged"]}]]],["p-ad5f63da",[[1,"gx-ide-plugin-explorer",{"plugins":[1040],"filterCallback":[16],"showDetailsCallback":[16],"executeActionCallback":[16],"loading":[32],"pluginsActionListModel":[32]},null,{"plugins":["pluginsChangedHandler"]}]]],["p-822988d0",[[1,"gx-ide-sc-chat-container",{"mode":[1],"generatingResponse":[32],"loadingState":[32],"showAdditionalContent":[32],"conversationCopied":[32],"assistantStatus":[32],"chatItems":[32],"exitWelcome":[64]}]]],["p-842fc6d4",[[1,"gx-ide-start-page",{"createKBCallback":[16],"hideOpenExistingProject":[4,"hide-open-existing-project"],"kbs":[16],"kbsFilterThreshold":[2,"kbs-filter-threshold"],"openKbCallback":[16],"openSampleCallback":[16],"samples":[16],"secondarySection":[16],"filteredKbs":[32],"kbFilterValue":[32],"loading":[32]},null,{"kbFilterValue":["kbFilterValueChanged"],"kbs":["kbsChanged"]}]]],["p-e2fd2c24",[[1,"gx-ide-team-dev-bring-changes",{"commitDetail":[16],"commitInformation":[16],"commitObjects":[16],"hideFilters":[4,"hide-filters"],"operationType":[1,"operation-type"],"mergeObjectsCallback":[16],"revertPillAsButton":[4,"revert-pill-as-button"],"contextMenuCallback":[8,"context-menu-callback"],"viewAllCommentsCallback":[16],"editRangeCallback":[16],"alreadyMergedObjectsIdsArray":[32],"atLeastOneObjectIsChecked":[32],"loading":[32],"objectsFiltered":[32],"searchValue":[32],"stateFilterValue":[32],"markedObjectsSet":[32],"objectsStatesMap":[32],"commitObjectsMessagesMap":[32],"merging":[32],"updateObjectState":[64]},null,{"objectsStatesMap":["objectsStatesMapChanged"],"commitObjects":["commitObjectsChanged"]}]]],["p-6ee5d68e",[[1,"gx-ide-team-dev-commit",{"commitCallback":[16],"objectsContextMenuCallback":[16],"loadCallback":[16],"openServerCallback":[16],"pendingItemsCheckedCallback":[16],"selectCallback":[16],"types":[16],"changeset":[16],"folders":[16],"updatePillAsButton":[4,"update-pill-as-button"],"serverDetails":[16],"allPendingAreCommitted":[32],"alreadyCommittedObjectsIdsSet":[32],"ignoredIdsSet":[32],"pendingIdsSet":[32],"markedObjectsSet":[32],"objectsStatusMap":[32],"objectsMessagesDataMap":[32],"atLeastOneObjectIsChecked":[32],"commentInputHasError":[32],"committing":[32],"filterSecondaryIsHidden":[32],"filterSecondaryHasConditions":[32],"loading":[32],"changesetsComboBoxModel":[32],"pendingObjectsAfterFilter":[32],"ignoredObjectsAfterFilter":[32],"typesComboBoxModel":[32],"pendingAndIgnored":[32],"commentsValue":[32],"searchValue":[32],"selectedType":[32],"selectedState":[32],"selectedChangeset":[32],"selectedFolder":[32],"selectedCategory":[32],"foldersComboBoxModel":[32],"isCommitDisabled":[32],"reload":[64],"disableCommit":[64]},null,{"alreadyCommittedObjectsIdsSet":["alreadyCommittedObjectsIdsSetChanged"],"markedObjectsSet":["markedObjectsSetChanged"],"objectsStatusMap":["objectsStatusMapChanged"],"pendingAndIgnored":["pendingAndIgnoredChanged"],"types":["typesChanged"],"changeset":["changesetChanged"],"folders":["folderChanged"]}]]],["p-972dc777",[[1,"gx-ide-team-dev-update",{"contextMenuCallback":[16],"loadCallback":[16],"pendingItemsCheckedCallback":[16],"types":[16],"updatePillAsButton":[4,"update-pill-as-button"],"updateCallback":[16],"openServerCallback":[16],"updateFrom":[16],"atLeastOneObjectIsChecked":[32],"loading":[32],"menuContextAction":[32],"searchValue":[32],"selectedAction":[32],"markedObjectsSet":[32],"alreadyUpdatedObjectsIdsSet":[32],"pendingIdsSet":[32],"ignoredIdsSet":[32],"objectsMessagesDataMap":[32],"updating":[32],"allPendingAreUpdated":[32],"kbPropertiesChecked":[32],"typesComboBoxModel":[32],"selectedType":[32],"isUpdateDisabled":[32],"objectsStatusMap":[32],"pendingAndIgnored":[32],"pendingObjectsAfterActionFilter":[32],"ignoredObjectsAfterActionFilter":[32],"reload":[64],"disableUpdate":[64]},null,{"markedObjectsSet":["markedObjectsSetChanged"],"alreadyUpdatedObjectsIdsSet":["alreadyUpdatedObjectsIdsSetChanged"],"objectsStatusMap":["objectsStatusMapChanged"],"pendingAndIgnored":["pendingAndIgnoredChanged"]}]]],["p-94a1f3d1",[[1,"gx-ide-wf-settings",{"displayTitle":[4,"display-title"],"configurationType":[1,"configuration-type"],"defaultConfiguration":[16],"saveCallback":[16],"cancelCallback":[16]}]]],["p-9a6b9a7f",[[1,"gx-ide-bpm-app-declaration",{"application":[1040],"cancelCallback":[16],"confirmCallback":[16],"getDataMappingCallback":[16],"selectApplicationCallback":[16],"selectMappingCallback":[16],"suggestApplicationsCallback":[16],"applicationComboBoxModel":[32]}]]],["p-4f2dbff7",[[1,"gx-ide-bpm-task-documents",{"documents":[1040],"cancelCallback":[16],"confirmCallback":[16],"selectDocumentCallback":[16],"suggestDocumentsCallback":[16],"documentsActionListState":[32],"documentName":[32],"selectedDocument":[32],"suggestedDocuments":[32],"suspendShortcuts":[64]}]]],["p-b7ae21bd",[[1,"gx-ide-curl-inspector",{"cancelCallback":[16],"confirmCallback":[16],"defaultParent":[16],"parent":[16],"selectModuleCallback":[16],"validateNameCallback":[16],"showTooltipError":[32],"isFormValid":[32],"curlContent":[32],"validatableControls":[32],"suspendShortcuts":[64]}]]],["p-e6c6d8f0",[[1,"gx-ide-data-type-selector",{"categories":[16],"dataTypeSelectedCallback":[16],"arrowUpOnFirstElement":[16],"focusType":[1,"focus-type"],"recentlyUsed":[16],"categoriesListBoxModel":[32],"selectedCategory":[32],"recentlyUsedActionListModel":[32],"loading":[32],"categoriesJustChanged":[32],"actionListDidRender":[32]},null,{"categories":["categoriesChanged"],"recentlyUsed":["recentlyUsedChanged"]}]]],["p-6da03710",[[1,"gx-ide-deployment-tool",{"deploymentUnits":[16],"targetTypes":[16],"defaultTargetTypeId":[1,"default-target-type-id"],"newDeploymentUnitId":[1,"new-deployment-unit-id"],"objectTypes":[16],"getDeploymentUnitObjectsCallback":[16],"optionsCallback":[16],"deployCallback":[16],"addObjectsCallback":[16],"createDeploymentUnitCallback":[16],"checkedObjectsIds":[32],"noObjects":[32],"selectedDeployTargetData":[32],"addedObjects":[32],"allObjectTypes":[32],"treeModel":[32],"allowDeploy":[32]},null,{"treeModel":["watchTreeModelHandler"],"objectTypes":["watchObjectTypesHandler"]}]]],["p-df2c52cb",[[1,"gx-ide-file-uploader",{"types":[16],"multiple":[4],"canEditName":[4,"can-edit-name"],"label":[1],"uploadFunction":[16],"cancelUploadFunction":[16],"fileUploadedCallback":[16],"dialogCanceledCallback":[16],"dialogConfirmedCallback":[16],"uploadCancelledCallback":[16],"fileRenamedCallback":[16],"fileValidationErrorCallback":[16],"fileDeletionErrorCallback":[16],"fileDeletedCallback":[16],"onBeforeDelete":[16],"fileStates":[32],"isDragging":[32],"clear":[64]}]]],["p-6eb0d883",[[1,"gx-ide-json-import",{"cancelCallback":[16],"confirmCallback":[16],"defaultParent":[16],"defaultRadioValue":[1,"default-radio-value"],"parent":[16],"selectModuleCallback":[16],"modeChangeCallback":[16],"fileChangeCallback":[16],"validateNameCallback":[16],"validateJSONCallback":[16],"onJsonContentChange":[16],"fileName":[32],"radioGroupValue":[32],"isFormValid":[32],"jsonContent":[32],"validatableControls":[32],"suspendShortcuts":[64]}]]],["p-f03930f9",[[17,"gx-ide-new-object",{"defaultTypeId":[1,"default-type-id"],"defaultParent":[16],"displayTitle":[4,"display-title"],"cancelCallback":[16],"createCallback":[16],"shadow":[4],"typeCategories":[1040],"parent":[16],"selectModuleCallback":[16],"validateNameCallback":[16],"suggestNameCallback":[16],"suggestDescriptionCallback":[16],"description":[32],"name":[32],"nameValidationErrorMessage":[32],"selectedCategory":[32],"selectedType":[32],"typeCategoriesActionListModel":[32],"typesActionListModel":[32],"selectedTypeMap":[32],"suspendShortcuts":[64]},null,{"typeCategories":["typeCategoriesChanged"]}]]],["p-cc3486f7",[[1,"gx-ide-open-api-import",{"defaultParent":[16],"displayTitle":[4,"display-title"],"cancelCallback":[16],"importCallback":[16],"loadCallback":[16],"selectParentCallback":[16],"actionListItems":[32],"importingIsInProcess":[32],"operations":[32],"selectedFile":[32],"selectedOperationForDescription":[32],"selectedOperations":[32],"selectAllCheckboxValue":[32],"selectAllCheckboxIndeterminate":[32],"suspendShortcuts":[64]}]]],["p-4d272c15",[[1,"gx-ide-references",{"loadReferencesCallback":[16],"openObjectCallback":[16],"openSelectorDialogCallback":[16],"selectReferenceCallback":[16],"selectorSourceCallback":[16],"selectedObject":[1040],"barHidden":[32],"objectsSuggestions":[32],"referencedByTreeData":[32],"referencesToTreeData":[32]},null,{"selectedObject":["selectedObjectChanged"]}]]],["p-b62f8d24",[[1,"gx-ide-select-user-team",{"cancelCallback":[16],"continueCallback":[16],"teams":[16],"slideIsVisible":[32],"teamsModelReady":[32]},null,{"teams":["teamsChanged"]}]]],["p-5e56280c",[[1,"gx-ide-server-selector",{"serversData":[1040],"recentlyUsedServersData":[16],"cancelCallback":[16],"selectServerCallback":[16],"deleteServerCallback":[16],"updateServerCallback":[16],"enableConfirmButton":[32],"serverUrlInputValue":[32],"serverNameInputValue":[32],"selectedServerUri":[32],"selectedServerName":[32],"userName":[32],"filterValue":[32],"filteredServersData":[32],"validatableControls":[32],"selectedConnectionType":[32],"selectedRecentlyUsedId":[32]},null,{"serversData":["serversDataChanged"]}]]],["p-22abaaf0",[[1,"gx-ide-sign-in-team",{"authStep":[1,"auth-step"],"continueCallback":[16],"signInCallback":[16],"termsConfirmationRequired":[4,"terms-confirmation-required"],"teams":[16],"termsCallback":[16],"privacyCallback":[16],"authStepInternal":[32],"slideIsVisible":[32],"termsAndConditionsAccepted":[32]},null,{"authStep":["authStepChanged"],"teams":["teamsChanged"]}]]],["p-1890d374",[[1,"gx-ide-team-dev-preview",{"teamDevPreviewData":[16],"loadRemoteChangesCallback":[16],"loadLocalChangesCallback":[16],"commitCallback":[16],"updateCallback":[16],"openFullDialogCallback":[16],"shareKBToServerCallback":[16],"createKBFromServerCallback":[16],"openTeamDevInfoCallback":[16],"reconnectCallback":[16],"loadingRemoteChanges":[32],"loadingLocalChanges":[32],"tabModel":[32],"selectedTabId":[32],"pendingCommitChangesCount":[32],"pendingRemoteChangesCount":[32],"remoteChangesTreeViewModel":[32],"localChangesTreeViewModel":[32],"remoteChangesCheckedNodesIds":[32],"localChangesCheckedNodesIds":[32],"commitMessage":[32],"committingChanges":[32],"updatingChanges":[32],"serverOperationsDisabled":[32],"reloadChanges":[64],"disableServerOperations":[64]},null,{"teamDevPreviewData":["onTeamDevPreviewDataChanged"]}]]],["p-60435ec1",[[1,"gx-ide-about",{"appVersion":[1,"app-version"],"versions":[16],"detailsCallback":[16],"privacyPolicyCallback":[16],"termsAndConditionsCallback":[16],"copying":[32]}]]],["p-e03c52bc",[[1,"gx-ide-bpm-sync-gam-roles",{"cancelCallback":[16],"saveCallback":[16],"suspendShortcuts":[64]}]]],["p-64c0a07c",[[1,"gx-ide-card",{"cardTitle":[1,"card-title"],"cardSubTitle":[1,"card-sub-title"],"icon":[1]}]]],["p-0488759f",[[1,"gx-ide-comments-viewer",{"commentsData":[16],"closeCallback":[16]}]]],["p-a105f903",[[1,"gx-ide-connect-gx-server",{"authenticationTypes":[16],"cancelCallback":[16],"connectCallback":[16],"defaultConnectionData":[16],"enableCustomServer":[4,"enable-custom-server"],"authenticationTypesComboBoxModel":[32],"gxServerConnectionData":[32],"validatableControls":[32]},null,{"authenticationTypes":["authenticationTypesChanged"]}]]],["p-03072671",[[1,"gx-ide-current-user-info",{"userInfo":[16],"myAccountCallback":[16],"changeTeamCallback":[16],"changeLanguageCallback":[16],"changeModeCallback":[16],"menuAlign":[16],"signOutCallback":[16],"termsCallback":[16],"privacyCallback":[16],"showMenu":[32]}]]],["p-6a41cd4b",[[1,"gx-ide-details-acknowledgements",{"dateGenerated":[16],"release":[1],"packages":[16],"openPackageUrlCallback":[16],"expandedLicenseId":[32]}]]],["p-08df9809",[[1,"gx-ide-directory-selector",{"accessibilityLabels":[16],"label":[1],"labelPosition":[513,"label-position"],"centerLabel":[1028,"center-label"],"labelWidth":[1,"label-width"],"selectDirectoryCallback":[16],"value":[1025],"icon":[32]}]]],["p-3a22af5d",[[1,"gx-ide-edit-module-server",{"cancelCallback":[16],"confirmCallback":[16],"name":[1],"selectSourceCallback":[16],"source":[1],"type":[1],"types":[16],"selectedType":[32],"suspendShortcuts":[64]}]]],["p-f5bdfa14",[[1,"gx-ide-gam-installation-settings",{"cancelCallback":[16],"canSelectPanels":[4,"can-select-panels"],"configurationType":[1,"configuration-type"],"defaultConfiguration":[16],"repairCallback":[16],"saveCallback":[16]}]]],["p-2d989eb1",[[1,"gx-ide-name-picker",{"cancelCallback":[16],"createCallback":[16],"defaultInputValue":[1,"default-input-value"],"inputValue":[32],"validatableControls":[32]},null,{"defaultInputValue":["defaultInputValueChanged"]}]]],["p-630581df",[[1,"gx-ide-new-environment",{"cancelCallback":[16],"createCallback":[16],"dataStores":[1040],"environmentName":[1025,"environment-name"],"getDataSourcesCallback":[16],"getEnvironmentNameCallback":[16],"getFrontEndsCallback":[16],"isAdvanced":[4,"is-advanced"],"languages":[1040],"getLanguagesCallback":[16],"runtimes":[16],"setAsTarget":[4,"set-as-target"],"advancedTabIsVisible":[32],"frontEnds":[32],"validatableControls":[32],"dataStoresComboBoxModel":[32],"languageComboBoxModel":[32],"runtimesRadioGroupModel":[32],"suspendShortcuts":[64]},null,{"dataStores":["dataStoresChanged"],"languages":["languagesChanged"],"runtimes":["runtimesChanged"]}]]],["p-70038e09",[[1,"gx-ide-new-kb",{"authenticationTypes":[16],"cancelCallback":[16],"collations":[16],"createCallback":[16],"createDataFilesInKBFolder":[4,"create-data-files-in-k-b-folder"],"databaseName":[1,"database-name"],"defaultDataSources":[1040],"getDataSourcesCallback":[16],"getFrontEndsCallback":[16],"getPrototypingEnvironmentsCallback":[16],"isAdvanced":[4,"is-advanced"],"kbLocation":[1025,"kb-location"],"kbName":[1,"kb-name"],"password":[1],"defaultPrototypingEnvironments":[1040],"prototypingTargets":[16],"savePassword":[4,"save-password"],"selectLocationCallback":[16],"serverNames":[16],"userInterfaceLanguages":[16],"userName":[1,"user-name"],"advancedTabIsVisible":[32],"frontEnds":[32],"validatableControls":[32],"createDataInKbDisabled":[32],"userNameVisible":[32],"passwordVisible":[32],"savePasswordVisible":[32],"authenticationTypesComboBoxModel":[32],"authenticationTypesInitialValue":[32],"collationsComboBoxModel":[32],"collationsInitialValue":[32],"defaultDataSourcesComboBoxModel":[32],"prototypingTargetsComboBoxModel":[32],"prototypingTargetsInitialValue":[32],"prototypingEnvironmentsComboBoxModel":[32],"prototypingEnvironmentsInitialValue":[32],"serverNamesComboBoxModel":[32],"serverNamesInitialValue":[32],"userInterfaceLanguagesComboBoxModel":[32],"userInterfaceLanguagesInitialValue":[32],"suspendShortcuts":[64]},null,{"authenticationTypes":["watchAuthenticationTypes"],"collations":["watchCollations"],"defaultDataSources":["watchDefaultDataSources"],"defaultPrototypingEnvironments":["watchDefaultPrototypingEnvironments"],"prototypingTargets":["watchPrototypingTargets"],"serverNames":["watchServerNames"],"userInterfaceLanguages":["watchUserInterfaceLanguages"]}]]],["p-13ca0217",[[1,"gx-ide-new-version",{"isRemoteOperation":[4,"is-remote-operation"],"isFreezeOperation":[4,"is-freeze-operation"],"showLinkedLocalVersionCheckbox":[4,"show-linked-local-version-checkbox"],"cancelCallback":[16],"createCallback":[16],"defaultInputValues":[16],"versionName":[32],"versionDescription":[32],"versionDescriptionEdited":[32],"setNewVersionAsActive":[32],"createLinkedLocalVersion":[32],"createAsProtectedVersion":[32],"validatableControls":[32]},null,{"defaultInputValues":["defaultInputValuesChanged"]}]]],["p-fbdc53fa",[[1,"gx-ide-plugin-details",{"data":[16],"installCallback":[16],"openLinkCallback":[16],"uninstallCallback":[16],"docsTabModel":[32],"selectedTabId":[32]}]]],["p-c3cc759d",[[1,"gx-ide-restore-version",{"selectSourceVersionCallback":[16],"confirmCallback":[16],"cancelCallback":[16],"toVersionInfo":[16],"versions":[16],"syncEnvironments":[32],"selectedSourceVersionName":[32],"selectedSourceVersion":[32],"versionsComboBoxModel":[32]},null,{"versions":["versionsChanged"]}]]],["p-9ffa7afd",[[1,"gx-ide-share-kb",{"connectionData":[16],"cancelCallback":[16],"changeConnectionCallback":[16],"kbName":[1025,"kb-name"],"shareKBCallback":[16],"selectKBVersionsCallback":[16],"enableSelectVersionsButton":[32],"validatableControls":[32],"versionSelectedType":[32],"versionsValueInput":[32]}]]],["p-a74f7b07",[[1,"gx-ide-sign-in",{"termsCallback":[16],"signInCallback":[16]}]]],["p-d6d646ca",[[1,"gx-ide-sign-in-result"]]],["p-9606ebed",[[1,"gx-ide-splash",{"appVersion":[1,"app-version"],"downloadDockerCallback":[16],"quitCallback":[16],"messages":[16],"openLogCallback":[16],"showQuitButton":[4,"show-quit-button"],"showOpenLogLink":[4,"show-open-log-link"],"showDockerMissingError":[4,"show-docker-missing-error"],"ariaBusy":[32]}]]],["p-b95f1df1",[[1,"gx-ide-starting-template",{"firstName":[1,"first-name"],"cancelCallback":[16],"saveCallback":[16],"myStateVariable":[32],"suspendShortcuts":[64]},null,{"firstName":["firstNameChanged"]}]]],["p-9d90126f",[[1,"gx-ide-switch-panel"]]],["p-9132ed4d",[[1,"gx-ide-switcher"]]],["p-09693b80",[[1,"gx-ide-team-dev-bring-all-changes-selector",{"cancelCallback":[16],"confirmCallback":[16],"sinceCommitDate":[32],"sinceCommitNumber":[32],"selectedOption":[32],"radioGroupModel":[32],"validatableControls":[32]}]]],["p-57c318ba",[[1,"gx-ide-team-dev-update-partial-selection",{"addCallback":[16],"cancelCallback":[16],"confirmCallback":[16],"selection":[1040],"selectedObjectsIds":[32],"validate":[64]}]]],["p-ec382d4e",[[1,"gx-ide-team-dev-update-to-revision",{"cancelCallback":[16],"confirmCallback":[16],"currentRevision":[1,"current-revision"],"isValid":[32],"validate":[64],"suspendShortcuts":[64]}]]],["p-2ec8193b",[[1,"gx-ide-test",{"name":[1],"filterOn":[32]}]]],["p-ec4dd69a",[[1,"gx-ide-top-bar",{"topBarTitle":[1,"top-bar-title"]}]]],["p-01142f81",[[1,"gx-ide-welcome-page",{"transitionType":[1,"transition-type"],"wordsPerMinute":[2,"words-per-minute"],"closeCallback":[16],"slides":[16],"activeSlideIndex":[32],"displaySlider":[32],"copyrightsVisible":[32],"lastSlideReached":[32],"sliderVisible":[32],"slideTransitioning":[32],"userHasChangedSlide":[32]}]]],["p-8dbc481d",[[1,"gx-ide-container",{"inactiveTitle":[4,"inactive-title"],"containerTitle":[1,"container-title"],"titleType":[1,"title-type"],"displayBorder":[4,"display-border"],"displayBorderTop":[4,"display-border-top"],"displayBorderEnd":[4,"display-border-end"],"displayBorderBottom":[4,"display-border-bottom"],"displayBorderStart":[4,"display-border-start"],"sectionsPadding":[1,"sections-padding"],"titleAlignment":[1,"title-alignment"],"noHeadingBorder":[4,"no-heading-border"],"noHeadingGap":[4,"no-heading-gap"],"noHeadingPadding":[4,"no-heading-padding"],"noHeadingPaddingBlockEnd":[4,"no-heading-padding-block-end"],"headingPaddingTop":[4,"heading-padding-top"],"headingJustify":[1,"heading-justify"],"titleHeightAsInput":[4,"title-height-as-input"],"flexRow":[4,"flex-row"],"flexContent":[4,"flex-content"],"noContentBorderTop":[4,"no-content-border-top"],"noContentPadding":[4,"no-content-padding"],"noContentGap":[4,"no-content-gap"],"alignItems":[1,"align-items"],"justifyContent":[1,"justify-content"],"contentBorderEnd":[4,"content-border-end"],"slimmerAboveFooter":[4,"slimmer-above-footer"],"noAboveFooterPadding":[4,"no-above-footer-padding"],"noBorderAboveFooter":[4,"no-border-above-footer"],"slimmerFooter":[4,"slimmer-footer"],"noFooterPadding":[4,"no-footer-padding"],"footerJustify":[1,"footer-justify"],"noBorderFooter":[4,"no-border-footer"],"hasHeaderSlot":[32],"hasSlottedContent":[32],"hasFooterSlot":[32],"hasAboveFooterSlot":[32],"hasOnlyHeading":[32],"hasOnlyContent":[32],"hasOnlyFooter":[32]}],[1,"gx-ide-title",{"titleCaption":[1,"title-caption"],"type":[1],"alignment":[1],"padding":[516],"noPaddingBottom":[516,"no-padding-bottom"],"border":[516]}]]],["p-c777da28",[[1,"gx-ide-bpm-objects-selector",{"displayTitle":[4,"display-title"],"selection":[1040],"addCallback":[16],"referencesCallback":[16],"objects":[32],"selectedObjects":[32]}]]],["p-8897c6de",[[1,"gx-ide-select-kb-items",{"activeItemCallback":[16],"cancelCallback":[16],"checkboxType":[1,"checkbox-type"],"expandOnClick":[4,"expand-on-click"],"checkedChanged":[16],"confirmCallback":[16],"dialogActions":[16],"itemContextMenuCallback":[16],"itemsList":[16],"showToggleCheckboxes":[4,"show-toggle-checkboxes"],"multiSelection":[4,"multi-selection"],"singleChecks":[4,"single-checks"],"showActiveItemLink":[4,"show-active-item-link"],"selectionChanged":[16],"activeItemNode":[32],"checkedNodesIds":[32],"renderFooter":[32],"nodeListFlattenedTreeModel":[32],"loading":[32],"nodesVersionsViewType":[32],"nodeVersionsListTreeModel":[32],"searchPatternValue":[32],"toggleCheckboxes":[32],"suspendShortcuts":[64],"updateSelection":[64],"updateCheckedItems":[64]},null,{"itemsList":["watchNodeListHandler"]}]]],["p-466bfc7b",[[1,"gx-ide-file-item",{"file":[16],"editable":[4],"fileDeletedCallback":[16],"fileDeletionErrorCallback":[16],"isEditing":[32],"currentName":[32]},null,{"file":["handleFileChange"]}]]],["p-45d9dcbc",[[1,"gx-ide-progress-bar",{"caption":[1],"minimal":[516],"active":[1028],"stateType":[1025,"state-type"],"progress":[1026],"closeType":[1,"close-type"],"closedCallback":[16],"topStateBarVisible":[32],"disableTransition":[32],"visible":[32],"reset":[64]},null,{"active":["watchActiveHandler"],"progress":["watchProgressHandler"]}]]],["p-8b01c337",[[1,"gx-ide-list-selector",{"ordered":[4],"readonly":[4],"type":[1],"required":[4],"ellipsis":[4],"value":[1025],"listName":[1,"list-name"],"noItemsBorder":[4,"no-items-border"],"noListBorder":[516,"no-list-border"]},[[2,"itemSelectionChanged","itemSelectionChangedHandler"]]],[4,"gx-ide-list-selector-item",{"itemId":[513,"item-id"],"itemValue":[1,"item-value"],"itemChecked":[1028,"item-checked"],"readonly":[1540],"ellipsis":[1540],"icon":[1],"noBorder":[1540,"no-border"],"universalSlotEnd":[516,"universal-slot-end"]}]]],["p-42318638",[[1,"gx-ide-status-buttons",{"active":[4],"errors":[2],"hideError":[4,"hide-error"],"warnings":[2],"hideWarning":[4,"hide-warning"],"successes":[2],"hideSuccess":[4,"hide-success"],"messages":[2],"hideMessage":[4,"hide-message"],"minimal":[4],"compact":[516],"noInnerBorders":[516,"no-inner-borders"],"iconsSize":[32]}]]],["p-456dc335",[[4,"gx-ide-chat-container",{"chatTitle":[1,"chat-title"],"copyConversationCallback":[16],"deleteConversationCallback":[16],"displayWelcomeScreen":[4,"display-welcome-screen"],"displayConversationCopiedMessage":[32],"menuIsExpanded":[32],"showCopyConversationMessage":[64]}],[1,"gx-ide-chat-welcome",{"welcomeTitle":[1025,"welcome-title"],"welcomeGreeting":[1025,"welcome-greeting"],"suggestedPrompts":[1040],"suggestedPrompRequestedCallback":[16],"showHeader":[32],"showSuggestedPrompts":[32],"hideWelcome":[32],"exitWelcome":[64]}]]],["p-e0cc8afe",[[0,"gx-ide-launchpad-api",{"data":[16],"onObjectSelected":[16]},null,{"data":["onDataChanged"]}]]],["p-de7532f5",[[1,"gx-ide-launchpad-apis",{"apis":[16],"onObjectSelected":[16]}],[1,"gx-ide-launchpad-native-apps",{"objects":[16],"onObjectSelected":[16],"filterValue":[32],"order":[32],"page":[32],"perPage":[32],"showCopiedMessage":[32],"showQRDialog":[32],"selectedObjectForQR":[32]}],[1,"gx-ide-launchpad-web-apps",{"objects":[16],"onObjectSelected":[16],"filterValue":[32],"recentObjectsExpanded":[32],"order":[32]},[[0,"expandedChange","handleAccordionExpandedChange"]]]]],["p-137757ec",[[1,"gx-ide-entity-selector",{"defaultValue":[16],"disabled":[516],"labelCaption":[1,"label-caption"],"labelPosition":[513,"label-position"],"name":[513],"selectEntityCallback":[16],"value":[1040],"buttonHasFocus":[32],"iconSrc":[32]},null,{"value":["valueChangedHandler"]}]]],["p-855559fe",[[1,"gx-ide-loader",{"abortTime":[2,"abort-time"],"cancelCallback":[16],"cancelLabel":[1,"cancel-label"],"description":[1],"displayBorder":[516,"display-border"],"loaderTitle":[1,"loader-title"],"show":[1028],"showWrapper":[32]}]]],["p-5f7de718",[[1,"gx-ide-empty-state",{"isAnimated":[4,"is-animated"],"stateDescription":[1,"state-description"],"stateIconSrc":[1,"state-icon-src"],"stateTitle":[1,"state-title"]}]]]]'), e)));
16
+ patchBrowser().then((e => a(JSON.parse('[["p-214ddb11",[[1,"gx-ide-bpm-export-xpdl",{"displayTitle":[4,"display-title"],"exportCallback":[16],"cancelCallback":[16],"addCallback":[16],"referencesCallback":[16],"emptyInput":[32],"emptyObjects":[32],"notExporting":[32]}]]],["p-f9403b49",[[1,"gx-ide-bpm-import-files",{"displayTitle":[4,"display-title"],"allowedExtensions":[16],"confirmCallback":[16],"cancelCallback":[16],"files":[32],"selectedFiles":[32]}]]],["p-e3b91ab9",[[1,"gx-ide-kb-manager-import",{"cancelCallback":[16],"importCallback":[16],"loadCallback":[16],"objectContextMenuCallback":[16],"optionsCallback":[16],"selectedFile":[1040],"statusMinimal":[4,"status-minimal"],"selectAllCheckboxValue":[32],"selectAllCheckboxIndeterminate":[32],"importStatusMessage":[32],"importTreeState":[32],"importedTreeFilterRegExp":[32],"importingIsInProcess":[32],"importTreeFilterList":[32],"noImport":[32],"noObjects":[32],"objectsTreeModel":[32],"showHiddenImportsMessage":[32],"someStatusVisible":[32],"statusInfo":[32],"addResultItem":[64]},null,{"importTreeState":["importTreeStateChanged","watchImportTreeStateHandler"],"objectsTreeModel":["watchObjectsTreeModelHandler"],"selectedFile":["selectedFileChanged"]}]]],["p-2c3edc89",[[1,"gx-ide-launchpad",{"data":[1],"isStandalone":[4,"is-standalone"],"sections":[32],"tabModel":[32],"suspendShortcuts":[64]},null,{"data":["watchDataHandler"]}]]],["p-dc2a6f77",[[1,"gx-ide-team-dev-select-recent-comment",{"displayTitle":[4,"display-title"],"comments":[16],"confirmCallback":[16],"cancelCallback":[16]}]]],["p-d7c133da",[[17,"gx-ide-data-selector",{"cancelCallback":[16],"confirmCallback":[16],"defaultModule":[16],"displayTitle":[4,"display-title"],"editCallback":[16],"loadItemsCallback":[16],"loader":[4],"newVariableCallback":[16],"selectObjectCallback":[16],"selectionType":[1,"selection-type"],"loading":[32],"objects":[32],"selectedObjectsIds":[32],"suspendShortcuts":[64],"validate":[64]}]]],["p-29ac6b13",[[1,"gx-ide-manage-module-references",{"autoCloseProgressBar":[4,"auto-close-progress-bar"],"executeActionCallback":[16],"serverContextMenuCallback":[16],"serverSelectedCallback":[16],"servers":[16],"showServerCommands":[4,"show-server-commands"],"actionInProgress":[32],"executeActionCallbackInProgress":[32],"filteredModules":[32],"loadingServer":[32],"modulesAll":[32],"progressState":[32],"progressValue":[32],"reRenderCounter":[32],"selectedModuleAction":[32],"selectedModuleId":[32],"selectedModuleType":[32],"selectedServerId":[32],"selectedServerValue":[32],"serversComboBoxModel":[32],"selectedModuleVersions":[32]},[[0,"progressBarClosed","progressBarClosedHandler"]],{"modulesAll":["modulesAllChanged"],"servers":["serversChanged"]}]]],["p-e259472a",[[1,"gx-ide-navigation-report",{"headerData":[16],"confirmCallback":[16],"cancelCallback":[16],"closeCallback":[16],"itemSelectedCallback":[16],"reportTreeItems":[32],"navigationItemsStatusRegExpString":[32],"navigationItemsCaptionRegExpString":[32],"navigationItemsRegExp":[32],"confirmed":[32],"headerState":[32],"statusInfo":[32],"someStatusVisible":[32],"addItem":[64],"clearItems":[64]},null,{"navigationItemsStatusRegExpString":["navigationItemsStatusRegExpStringChanged"],"navigationItemsCaptionRegExpString":["navigationItemsCaptionRegExpStringChanged"]}]]],["p-1107bf84",[[17,"gx-ide-object-selector",{"cancelCallback":[16],"categories":[16],"defaultCategory":[1,"default-category"],"defaultModule":[16],"defaultType":[1,"default-type"],"loader":[4],"loadCallback":[16],"multiSelection":[4,"multi-selection"],"newObjectCallback":[16],"openSelectionCallback":[16],"patternValue":[1,"pattern-value"],"selectModuleCallback":[16],"types":[16],"filterModified":[32],"loading":[32],"modifiedAfterValue":[32],"objects":[32],"selectedObjectsIdsArray":[32],"suspendShortcuts":[64],"validate":[64]}]]],["p-85cf50c5",[[1,"gx-ide-team-dev-history",{"types":[16],"itemContextMenuCallback":[16],"gridContextMenuCallback":[16],"selectedVersionId":[1025,"selected-version-id"],"versions":[1040],"loadCallback":[16],"loadDetailCallback":[16],"selectedVersionChangeCallback":[16],"historyDetail":[32],"objects":[32],"isFirstLoad":[32],"sidebarExpanded":[32],"filtersHidden":[32],"loading":[32],"selectedRevisionId":[32],"hasActiveVersion":[32]},null,{"selectedVersionId":["selectedVersionIdChanged"],"versions":["versionsListChanged"]}]]],["p-086de552",[[1,"gx-ide-ww-attributes",{"contextMenuCallback":[16],"deleteSelectionCallback":[16],"loadCallback":[16],"objectActionCallback":[16],"objects":[16],"openSelectionCallback":[16],"selectionChangeCallback":[16],"types":[16],"attributes":[32],"selectedAttributesIds":[32],"filterMore":[32],"name":[32],"loading":[32],"object":[32],"type":[32],"reload":[64],"validate":[64]},[[1,"keydown","keyDownHandler"]]]]],["p-349f1622",[[1,"gx-ide-ww-files",{"categories":[16],"contextMenuCallback":[16],"defaultCategory":[1,"default-category"],"defaultModule":[16],"deleteSelectionCallback":[16],"gridColumnsVisibility":[16],"loadCallback":[16],"newFileCallback":[16],"openSelectionCallback":[16],"selectModuleCallback":[16],"selectionChangeCallback":[16],"showSearchContents":[4,"show-search-contents"],"afterValue":[32],"categoriesComboBoxModel":[32],"dateTimeValue":[32],"isLoading":[32],"filterAfterComboBoxModel":[32],"showModified":[32],"objects":[32],"reload":[64]},[[1,"keydown","keyDownHandler"]],{"dateTimeValue":["dateTimeValueChanged"],"categories":["categoriesChanged"]}]]],["p-8f2f8995",[[1,"gx-ide-ww-images",{"displayTitle":[4,"display-title"],"secondaryFilter":[4,"secondary-filter"],"categories":[16],"densities":[16],"defaultCategory":[1,"default-category"],"defaultModule":[16],"defaultType":[1,"default-type"],"filterModules":[16],"languages":[16],"layers":[16],"contextMenuCallback":[16],"deleteSelectionCallback":[16],"loadCallback":[16],"loadImageItemsCallback":[16],"newObjectCallback":[16],"openSelectionCallback":[16],"selectModuleCallback":[16],"selectionObjectChangedCallback":[16],"shadow":[4],"styles":[16],"types":[16],"filtersHidden":[32],"filterAfterType":[32],"filterModified":[32],"images":[32],"filteredImages":[32],"imagesSelectedItems":[32],"selectedObjectsIds":[32],"filterImagesInputValue":[32],"validate":[64],"reload":[64]},[[1,"keydown","keyDownHandler"]],{"filtersHidden":["filtersHiddenHandler"]}]]],["p-75925cee",[[1,"gx-ide-bpm-assign-roles",{"displayTitle":[4,"display-title"],"roles":[16],"assignedRoles":[16],"confirmCallback":[16],"cancelCallback":[16],"unassignedRolesState":[32],"assignedRolesState":[32],"filterUnassignedInput":[32],"filterAssignedInput":[32],"unassignedSelected":[32],"assignedSelected":[32]}]]],["p-33aeb361",[[1,"gx-ide-bpm-import-gxpm",{"displayTitle":[4,"display-title"],"confirmCallback":[16],"cancelCallback":[16],"selectedFile":[32],"pathValue":[32]}]]],["p-074d2bcf",[[1,"gx-ide-bpm-timer-duration",{"displayTitle":[4,"display-title"],"duration":[16],"confirmCallback":[16],"cancelCallback":[16]}]]],["p-93e79d19",[[1,"gx-ide-create-kb-from-server",{"connectionData":[16],"cancelCallback":[16],"changeConnectionCallback":[16],"createKBCallback":[16],"getGXserverKBsCallback":[16],"selectKBVersionsCallback":[16],"enableSelectVersionsButton":[32],"localKbNameInputValue":[32],"loading":[32],"filterValue":[32],"kbsFilteredActionListModel":[32],"validatableControls":[32],"versionSelectedType":[32],"versionsValueInput":[32]}]]],["p-2c0f10bf",[[1,"gx-ide-design-import",{"reactiveSettings":[16],"extensions":[16],"defaultModule":[16],"path":[1025],"accessToken":[1025,"access-token"],"importAsWebPanels":[4,"import-as-web-panels"],"selectModuleCallback":[16],"cancelCallback":[16],"confirmCallback":[16],"loadCallback":[16],"loadDesignSystemCallback":[16],"loadFontCallback":[16],"loadImageCallback":[16],"loadPanelDataCallback":[16],"requiresAccessTokenCallback":[16],"styles":[16],"textEditorFactoryCallback":[16],"reRenderCounter":[32],"stylesAsComboBoxModel":[32],"styleValue":[32],"accessTokenHasError":[32],"pathIsValid":[32],"tabsModel":[32],"activeTabs":[32],"renderedTabs":[32],"designData":[32],"detailTreeModel":[32],"isLoading":[32],"isLoaded":[32],"messages":[32],"selectedFile":[32],"selectedDesignType":[32],"selectedDesignItem":[32],"requiresAccessToken":[32],"designDataTreeDataModel":[32],"updateTabsActiveTab":[32],"fitImages":[32],"lastLoadCallbackSettingValues":[32]},null,{"pathIsValid":["pathIsValidChanged"],"designData":["designDataChanged"],"path":["pathChanged"],"accessToken":["accessTokenChanged"],"styles":["stylesChanged"],"messages":["watchMessagesHandler"]}]]],["p-9da12c9e",[[1,"gx-ide-kb-manager-export",{"addKBPropertiesCallback":[16],"addObjectsCallback":[16],"addReferencesCallback":[16],"cancelCallback":[16],"exportCallback":[16],"exportFileDirectoryCallback":[16],"fileName":[1,"file-name"],"kbPropertiesTypes":[16],"loader":[4],"objectTypes":[16],"optionsCallback":[16],"addKbPropertiesIsChecked":[32],"atLeastOnePropertyItemIsChecked":[32],"atLeastOneObjectItemIsChecked":[32],"checkedObjectsIds":[32],"checkedPropertiesIds":[32],"exportAllIsChecked":[32],"exportingIsInProcess":[32],"hasObjects":[32],"objectsTreeViewModel":[32]},null,{"objectsTreeViewModel":["objectsTreeViewModelChanged"],"objectTypes":["objectTypesChanged"]}]]],["p-ad5f63da",[[1,"gx-ide-plugin-explorer",{"plugins":[1040],"filterCallback":[16],"showDetailsCallback":[16],"executeActionCallback":[16],"loading":[32],"pluginsActionListModel":[32]},null,{"plugins":["pluginsChangedHandler"]}]]],["p-822988d0",[[1,"gx-ide-sc-chat-container",{"mode":[1],"generatingResponse":[32],"loadingState":[32],"showAdditionalContent":[32],"conversationCopied":[32],"assistantStatus":[32],"chatItems":[32],"exitWelcome":[64]}]]],["p-842fc6d4",[[1,"gx-ide-start-page",{"createKBCallback":[16],"hideOpenExistingProject":[4,"hide-open-existing-project"],"kbs":[16],"kbsFilterThreshold":[2,"kbs-filter-threshold"],"openKbCallback":[16],"openSampleCallback":[16],"samples":[16],"secondarySection":[16],"filteredKbs":[32],"kbFilterValue":[32],"loading":[32]},null,{"kbFilterValue":["kbFilterValueChanged"],"kbs":["kbsChanged"]}]]],["p-e2fd2c24",[[1,"gx-ide-team-dev-bring-changes",{"commitDetail":[16],"commitInformation":[16],"commitObjects":[16],"hideFilters":[4,"hide-filters"],"operationType":[1,"operation-type"],"mergeObjectsCallback":[16],"revertPillAsButton":[4,"revert-pill-as-button"],"contextMenuCallback":[8,"context-menu-callback"],"viewAllCommentsCallback":[16],"editRangeCallback":[16],"alreadyMergedObjectsIdsArray":[32],"atLeastOneObjectIsChecked":[32],"loading":[32],"objectsFiltered":[32],"searchValue":[32],"stateFilterValue":[32],"markedObjectsSet":[32],"objectsStatesMap":[32],"commitObjectsMessagesMap":[32],"merging":[32],"updateObjectState":[64]},null,{"objectsStatesMap":["objectsStatesMapChanged"],"commitObjects":["commitObjectsChanged"]}]]],["p-6ee5d68e",[[1,"gx-ide-team-dev-commit",{"commitCallback":[16],"objectsContextMenuCallback":[16],"loadCallback":[16],"openServerCallback":[16],"pendingItemsCheckedCallback":[16],"selectCallback":[16],"types":[16],"changeset":[16],"folders":[16],"updatePillAsButton":[4,"update-pill-as-button"],"serverDetails":[16],"allPendingAreCommitted":[32],"alreadyCommittedObjectsIdsSet":[32],"ignoredIdsSet":[32],"pendingIdsSet":[32],"markedObjectsSet":[32],"objectsStatusMap":[32],"objectsMessagesDataMap":[32],"atLeastOneObjectIsChecked":[32],"commentInputHasError":[32],"committing":[32],"filterSecondaryIsHidden":[32],"filterSecondaryHasConditions":[32],"loading":[32],"changesetsComboBoxModel":[32],"pendingObjectsAfterFilter":[32],"ignoredObjectsAfterFilter":[32],"typesComboBoxModel":[32],"pendingAndIgnored":[32],"commentsValue":[32],"searchValue":[32],"selectedType":[32],"selectedState":[32],"selectedChangeset":[32],"selectedFolder":[32],"selectedCategory":[32],"foldersComboBoxModel":[32],"isCommitDisabled":[32],"reload":[64],"disableCommit":[64]},null,{"alreadyCommittedObjectsIdsSet":["alreadyCommittedObjectsIdsSetChanged"],"markedObjectsSet":["markedObjectsSetChanged"],"objectsStatusMap":["objectsStatusMapChanged"],"pendingAndIgnored":["pendingAndIgnoredChanged"],"types":["typesChanged"],"changeset":["changesetChanged"],"folders":["folderChanged"]}]]],["p-972dc777",[[1,"gx-ide-team-dev-update",{"contextMenuCallback":[16],"loadCallback":[16],"pendingItemsCheckedCallback":[16],"types":[16],"updatePillAsButton":[4,"update-pill-as-button"],"updateCallback":[16],"openServerCallback":[16],"updateFrom":[16],"atLeastOneObjectIsChecked":[32],"loading":[32],"menuContextAction":[32],"searchValue":[32],"selectedAction":[32],"markedObjectsSet":[32],"alreadyUpdatedObjectsIdsSet":[32],"pendingIdsSet":[32],"ignoredIdsSet":[32],"objectsMessagesDataMap":[32],"updating":[32],"allPendingAreUpdated":[32],"kbPropertiesChecked":[32],"typesComboBoxModel":[32],"selectedType":[32],"isUpdateDisabled":[32],"objectsStatusMap":[32],"pendingAndIgnored":[32],"pendingObjectsAfterActionFilter":[32],"ignoredObjectsAfterActionFilter":[32],"reload":[64],"disableUpdate":[64]},null,{"markedObjectsSet":["markedObjectsSetChanged"],"alreadyUpdatedObjectsIdsSet":["alreadyUpdatedObjectsIdsSetChanged"],"objectsStatusMap":["objectsStatusMapChanged"],"pendingAndIgnored":["pendingAndIgnoredChanged"]}]]],["p-94a1f3d1",[[1,"gx-ide-wf-settings",{"displayTitle":[4,"display-title"],"configurationType":[1,"configuration-type"],"defaultConfiguration":[16],"saveCallback":[16],"cancelCallback":[16]}]]],["p-9a6b9a7f",[[1,"gx-ide-bpm-app-declaration",{"application":[1040],"cancelCallback":[16],"confirmCallback":[16],"getDataMappingCallback":[16],"selectApplicationCallback":[16],"selectMappingCallback":[16],"suggestApplicationsCallback":[16],"applicationComboBoxModel":[32]}]]],["p-4f2dbff7",[[1,"gx-ide-bpm-task-documents",{"documents":[1040],"cancelCallback":[16],"confirmCallback":[16],"selectDocumentCallback":[16],"suggestDocumentsCallback":[16],"documentsActionListState":[32],"documentName":[32],"selectedDocument":[32],"suggestedDocuments":[32],"suspendShortcuts":[64]}]]],["p-b7ae21bd",[[1,"gx-ide-curl-inspector",{"cancelCallback":[16],"confirmCallback":[16],"defaultParent":[16],"parent":[16],"selectModuleCallback":[16],"validateNameCallback":[16],"showTooltipError":[32],"isFormValid":[32],"curlContent":[32],"validatableControls":[32],"suspendShortcuts":[64]}]]],["p-e6c6d8f0",[[1,"gx-ide-data-type-selector",{"categories":[16],"dataTypeSelectedCallback":[16],"arrowUpOnFirstElement":[16],"focusType":[1,"focus-type"],"recentlyUsed":[16],"categoriesListBoxModel":[32],"selectedCategory":[32],"recentlyUsedActionListModel":[32],"loading":[32],"categoriesJustChanged":[32],"actionListDidRender":[32]},null,{"categories":["categoriesChanged"],"recentlyUsed":["recentlyUsedChanged"]}]]],["p-6da03710",[[1,"gx-ide-deployment-tool",{"deploymentUnits":[16],"targetTypes":[16],"defaultTargetTypeId":[1,"default-target-type-id"],"newDeploymentUnitId":[1,"new-deployment-unit-id"],"objectTypes":[16],"getDeploymentUnitObjectsCallback":[16],"optionsCallback":[16],"deployCallback":[16],"addObjectsCallback":[16],"createDeploymentUnitCallback":[16],"checkedObjectsIds":[32],"noObjects":[32],"selectedDeployTargetData":[32],"addedObjects":[32],"allObjectTypes":[32],"treeModel":[32],"allowDeploy":[32]},null,{"treeModel":["watchTreeModelHandler"],"objectTypes":["watchObjectTypesHandler"]}]]],["p-df2c52cb",[[1,"gx-ide-file-uploader",{"types":[16],"multiple":[4],"canEditName":[4,"can-edit-name"],"label":[1],"uploadFunction":[16],"cancelUploadFunction":[16],"fileUploadedCallback":[16],"dialogCanceledCallback":[16],"dialogConfirmedCallback":[16],"uploadCancelledCallback":[16],"fileRenamedCallback":[16],"fileValidationErrorCallback":[16],"fileDeletionErrorCallback":[16],"fileDeletedCallback":[16],"onBeforeDelete":[16],"fileStates":[32],"isDragging":[32],"clear":[64]}]]],["p-6eb0d883",[[1,"gx-ide-json-import",{"cancelCallback":[16],"confirmCallback":[16],"defaultParent":[16],"defaultRadioValue":[1,"default-radio-value"],"parent":[16],"selectModuleCallback":[16],"modeChangeCallback":[16],"fileChangeCallback":[16],"validateNameCallback":[16],"validateJSONCallback":[16],"onJsonContentChange":[16],"fileName":[32],"radioGroupValue":[32],"isFormValid":[32],"jsonContent":[32],"validatableControls":[32],"suspendShortcuts":[64]}]]],["p-f03930f9",[[17,"gx-ide-new-object",{"defaultTypeId":[1,"default-type-id"],"defaultParent":[16],"displayTitle":[4,"display-title"],"cancelCallback":[16],"createCallback":[16],"shadow":[4],"typeCategories":[1040],"parent":[16],"selectModuleCallback":[16],"validateNameCallback":[16],"suggestNameCallback":[16],"suggestDescriptionCallback":[16],"description":[32],"name":[32],"nameValidationErrorMessage":[32],"selectedCategory":[32],"selectedType":[32],"typeCategoriesActionListModel":[32],"typesActionListModel":[32],"selectedTypeMap":[32],"suspendShortcuts":[64]},null,{"typeCategories":["typeCategoriesChanged"]}]]],["p-cc3486f7",[[1,"gx-ide-open-api-import",{"defaultParent":[16],"displayTitle":[4,"display-title"],"cancelCallback":[16],"importCallback":[16],"loadCallback":[16],"selectParentCallback":[16],"actionListItems":[32],"importingIsInProcess":[32],"operations":[32],"selectedFile":[32],"selectedOperationForDescription":[32],"selectedOperations":[32],"selectAllCheckboxValue":[32],"selectAllCheckboxIndeterminate":[32],"suspendShortcuts":[64]}]]],["p-4d272c15",[[1,"gx-ide-references",{"loadReferencesCallback":[16],"openObjectCallback":[16],"openSelectorDialogCallback":[16],"selectReferenceCallback":[16],"selectorSourceCallback":[16],"selectedObject":[1040],"barHidden":[32],"objectsSuggestions":[32],"referencedByTreeData":[32],"referencesToTreeData":[32]},null,{"selectedObject":["selectedObjectChanged"]}]]],["p-b62f8d24",[[1,"gx-ide-select-user-team",{"cancelCallback":[16],"continueCallback":[16],"teams":[16],"slideIsVisible":[32],"teamsModelReady":[32]},null,{"teams":["teamsChanged"]}]]],["p-5e56280c",[[1,"gx-ide-server-selector",{"serversData":[1040],"recentlyUsedServersData":[16],"cancelCallback":[16],"selectServerCallback":[16],"deleteServerCallback":[16],"updateServerCallback":[16],"enableConfirmButton":[32],"serverUrlInputValue":[32],"serverNameInputValue":[32],"selectedServerUri":[32],"selectedServerName":[32],"userName":[32],"filterValue":[32],"filteredServersData":[32],"validatableControls":[32],"selectedConnectionType":[32],"selectedRecentlyUsedId":[32]},null,{"serversData":["serversDataChanged"]}]]],["p-22abaaf0",[[1,"gx-ide-sign-in-team",{"authStep":[1,"auth-step"],"continueCallback":[16],"signInCallback":[16],"termsConfirmationRequired":[4,"terms-confirmation-required"],"teams":[16],"termsCallback":[16],"privacyCallback":[16],"authStepInternal":[32],"slideIsVisible":[32],"termsAndConditionsAccepted":[32]},null,{"authStep":["authStepChanged"],"teams":["teamsChanged"]}]]],["p-1890d374",[[1,"gx-ide-team-dev-preview",{"teamDevPreviewData":[16],"loadRemoteChangesCallback":[16],"loadLocalChangesCallback":[16],"commitCallback":[16],"updateCallback":[16],"openFullDialogCallback":[16],"shareKBToServerCallback":[16],"createKBFromServerCallback":[16],"openTeamDevInfoCallback":[16],"reconnectCallback":[16],"loadingRemoteChanges":[32],"loadingLocalChanges":[32],"tabModel":[32],"selectedTabId":[32],"pendingCommitChangesCount":[32],"pendingRemoteChangesCount":[32],"remoteChangesTreeViewModel":[32],"localChangesTreeViewModel":[32],"remoteChangesCheckedNodesIds":[32],"localChangesCheckedNodesIds":[32],"commitMessage":[32],"committingChanges":[32],"updatingChanges":[32],"serverOperationsDisabled":[32],"reloadChanges":[64],"disableServerOperations":[64]},null,{"teamDevPreviewData":["onTeamDevPreviewDataChanged"]}]]],["p-60435ec1",[[1,"gx-ide-about",{"appVersion":[1,"app-version"],"versions":[16],"detailsCallback":[16],"privacyPolicyCallback":[16],"termsAndConditionsCallback":[16],"copying":[32]}]]],["p-e03c52bc",[[1,"gx-ide-bpm-sync-gam-roles",{"cancelCallback":[16],"saveCallback":[16],"suspendShortcuts":[64]}]]],["p-64c0a07c",[[1,"gx-ide-card",{"cardTitle":[1,"card-title"],"cardSubTitle":[1,"card-sub-title"],"icon":[1]}]]],["p-0488759f",[[1,"gx-ide-comments-viewer",{"commentsData":[16],"closeCallback":[16]}]]],["p-a105f903",[[1,"gx-ide-connect-gx-server",{"authenticationTypes":[16],"cancelCallback":[16],"connectCallback":[16],"defaultConnectionData":[16],"enableCustomServer":[4,"enable-custom-server"],"authenticationTypesComboBoxModel":[32],"gxServerConnectionData":[32],"validatableControls":[32]},null,{"authenticationTypes":["authenticationTypesChanged"]}]]],["p-03072671",[[1,"gx-ide-current-user-info",{"userInfo":[16],"myAccountCallback":[16],"changeTeamCallback":[16],"changeLanguageCallback":[16],"changeModeCallback":[16],"menuAlign":[16],"signOutCallback":[16],"termsCallback":[16],"privacyCallback":[16],"showMenu":[32]}]]],["p-6a41cd4b",[[1,"gx-ide-details-acknowledgements",{"dateGenerated":[16],"release":[1],"packages":[16],"openPackageUrlCallback":[16],"expandedLicenseId":[32]}]]],["p-08df9809",[[1,"gx-ide-directory-selector",{"accessibilityLabels":[16],"label":[1],"labelPosition":[513,"label-position"],"centerLabel":[1028,"center-label"],"labelWidth":[1,"label-width"],"selectDirectoryCallback":[16],"value":[1025],"icon":[32]}]]],["p-3a22af5d",[[1,"gx-ide-edit-module-server",{"cancelCallback":[16],"confirmCallback":[16],"name":[1],"selectSourceCallback":[16],"source":[1],"type":[1],"types":[16],"selectedType":[32],"suspendShortcuts":[64]}]]],["p-f5bdfa14",[[1,"gx-ide-gam-installation-settings",{"cancelCallback":[16],"canSelectPanels":[4,"can-select-panels"],"configurationType":[1,"configuration-type"],"defaultConfiguration":[16],"repairCallback":[16],"saveCallback":[16]}]]],["p-2d989eb1",[[1,"gx-ide-name-picker",{"cancelCallback":[16],"createCallback":[16],"defaultInputValue":[1,"default-input-value"],"inputValue":[32],"validatableControls":[32]},null,{"defaultInputValue":["defaultInputValueChanged"]}]]],["p-630581df",[[1,"gx-ide-new-environment",{"cancelCallback":[16],"createCallback":[16],"dataStores":[1040],"environmentName":[1025,"environment-name"],"getDataSourcesCallback":[16],"getEnvironmentNameCallback":[16],"getFrontEndsCallback":[16],"isAdvanced":[4,"is-advanced"],"languages":[1040],"getLanguagesCallback":[16],"runtimes":[16],"setAsTarget":[4,"set-as-target"],"advancedTabIsVisible":[32],"frontEnds":[32],"validatableControls":[32],"dataStoresComboBoxModel":[32],"languageComboBoxModel":[32],"runtimesRadioGroupModel":[32],"suspendShortcuts":[64]},null,{"dataStores":["dataStoresChanged"],"languages":["languagesChanged"],"runtimes":["runtimesChanged"]}]]],["p-70038e09",[[1,"gx-ide-new-kb",{"authenticationTypes":[16],"cancelCallback":[16],"collations":[16],"createCallback":[16],"createDataFilesInKBFolder":[4,"create-data-files-in-k-b-folder"],"databaseName":[1,"database-name"],"defaultDataSources":[1040],"getDataSourcesCallback":[16],"getFrontEndsCallback":[16],"getPrototypingEnvironmentsCallback":[16],"isAdvanced":[4,"is-advanced"],"kbLocation":[1025,"kb-location"],"kbName":[1,"kb-name"],"password":[1],"defaultPrototypingEnvironments":[1040],"prototypingTargets":[16],"savePassword":[4,"save-password"],"selectLocationCallback":[16],"serverNames":[16],"userInterfaceLanguages":[16],"userName":[1,"user-name"],"advancedTabIsVisible":[32],"frontEnds":[32],"validatableControls":[32],"createDataInKbDisabled":[32],"userNameVisible":[32],"passwordVisible":[32],"savePasswordVisible":[32],"authenticationTypesComboBoxModel":[32],"authenticationTypesInitialValue":[32],"collationsComboBoxModel":[32],"collationsInitialValue":[32],"defaultDataSourcesComboBoxModel":[32],"prototypingTargetsComboBoxModel":[32],"prototypingTargetsInitialValue":[32],"prototypingEnvironmentsComboBoxModel":[32],"prototypingEnvironmentsInitialValue":[32],"serverNamesComboBoxModel":[32],"serverNamesInitialValue":[32],"userInterfaceLanguagesComboBoxModel":[32],"userInterfaceLanguagesInitialValue":[32],"suspendShortcuts":[64]},null,{"authenticationTypes":["watchAuthenticationTypes"],"collations":["watchCollations"],"defaultDataSources":["watchDefaultDataSources"],"defaultPrototypingEnvironments":["watchDefaultPrototypingEnvironments"],"prototypingTargets":["watchPrototypingTargets"],"serverNames":["watchServerNames"],"userInterfaceLanguages":["watchUserInterfaceLanguages"]}]]],["p-13ca0217",[[1,"gx-ide-new-version",{"isRemoteOperation":[4,"is-remote-operation"],"isFreezeOperation":[4,"is-freeze-operation"],"showLinkedLocalVersionCheckbox":[4,"show-linked-local-version-checkbox"],"cancelCallback":[16],"createCallback":[16],"defaultInputValues":[16],"versionName":[32],"versionDescription":[32],"versionDescriptionEdited":[32],"setNewVersionAsActive":[32],"createLinkedLocalVersion":[32],"createAsProtectedVersion":[32],"validatableControls":[32]},null,{"defaultInputValues":["defaultInputValuesChanged"]}]]],["p-fbdc53fa",[[1,"gx-ide-plugin-details",{"data":[16],"installCallback":[16],"openLinkCallback":[16],"uninstallCallback":[16],"docsTabModel":[32],"selectedTabId":[32]}]]],["p-c3cc759d",[[1,"gx-ide-restore-version",{"selectSourceVersionCallback":[16],"confirmCallback":[16],"cancelCallback":[16],"toVersionInfo":[16],"versions":[16],"syncEnvironments":[32],"selectedSourceVersionName":[32],"selectedSourceVersion":[32],"versionsComboBoxModel":[32]},null,{"versions":["versionsChanged"]}]]],["p-9ffa7afd",[[1,"gx-ide-share-kb",{"connectionData":[16],"cancelCallback":[16],"changeConnectionCallback":[16],"kbName":[1025,"kb-name"],"shareKBCallback":[16],"selectKBVersionsCallback":[16],"enableSelectVersionsButton":[32],"validatableControls":[32],"versionSelectedType":[32],"versionsValueInput":[32]}]]],["p-a74f7b07",[[1,"gx-ide-sign-in",{"termsCallback":[16],"signInCallback":[16]}]]],["p-d6d646ca",[[1,"gx-ide-sign-in-result"]]],["p-9606ebed",[[1,"gx-ide-splash",{"appVersion":[1,"app-version"],"downloadDockerCallback":[16],"quitCallback":[16],"messages":[16],"openLogCallback":[16],"showQuitButton":[4,"show-quit-button"],"showOpenLogLink":[4,"show-open-log-link"],"showDockerMissingError":[4,"show-docker-missing-error"],"ariaBusy":[32]}]]],["p-b95f1df1",[[1,"gx-ide-starting-template",{"firstName":[1,"first-name"],"cancelCallback":[16],"saveCallback":[16],"myStateVariable":[32],"suspendShortcuts":[64]},null,{"firstName":["firstNameChanged"]}]]],["p-9d90126f",[[1,"gx-ide-switch-panel"]]],["p-9132ed4d",[[1,"gx-ide-switcher"]]],["p-a543dfdb",[[1,"gx-ide-team-dev-bring-all-changes-selector",{"cancelCallback":[16],"confirmCallback":[16],"sinceCommitDate":[32],"sinceCommitNumber":[32],"selectedOption":[32],"radioGroupModel":[32],"validatableControls":[32]}]]],["p-57c318ba",[[1,"gx-ide-team-dev-update-partial-selection",{"addCallback":[16],"cancelCallback":[16],"confirmCallback":[16],"selection":[1040],"selectedObjectsIds":[32],"validate":[64]}]]],["p-ec382d4e",[[1,"gx-ide-team-dev-update-to-revision",{"cancelCallback":[16],"confirmCallback":[16],"currentRevision":[1,"current-revision"],"isValid":[32],"validate":[64],"suspendShortcuts":[64]}]]],["p-2ec8193b",[[1,"gx-ide-test",{"name":[1],"filterOn":[32]}]]],["p-ec4dd69a",[[1,"gx-ide-top-bar",{"topBarTitle":[1,"top-bar-title"]}]]],["p-01142f81",[[1,"gx-ide-welcome-page",{"transitionType":[1,"transition-type"],"wordsPerMinute":[2,"words-per-minute"],"closeCallback":[16],"slides":[16],"activeSlideIndex":[32],"displaySlider":[32],"copyrightsVisible":[32],"lastSlideReached":[32],"sliderVisible":[32],"slideTransitioning":[32],"userHasChangedSlide":[32]}]]],["p-8dbc481d",[[1,"gx-ide-container",{"inactiveTitle":[4,"inactive-title"],"containerTitle":[1,"container-title"],"titleType":[1,"title-type"],"displayBorder":[4,"display-border"],"displayBorderTop":[4,"display-border-top"],"displayBorderEnd":[4,"display-border-end"],"displayBorderBottom":[4,"display-border-bottom"],"displayBorderStart":[4,"display-border-start"],"sectionsPadding":[1,"sections-padding"],"titleAlignment":[1,"title-alignment"],"noHeadingBorder":[4,"no-heading-border"],"noHeadingGap":[4,"no-heading-gap"],"noHeadingPadding":[4,"no-heading-padding"],"noHeadingPaddingBlockEnd":[4,"no-heading-padding-block-end"],"headingPaddingTop":[4,"heading-padding-top"],"headingJustify":[1,"heading-justify"],"titleHeightAsInput":[4,"title-height-as-input"],"flexRow":[4,"flex-row"],"flexContent":[4,"flex-content"],"noContentBorderTop":[4,"no-content-border-top"],"noContentPadding":[4,"no-content-padding"],"noContentGap":[4,"no-content-gap"],"alignItems":[1,"align-items"],"justifyContent":[1,"justify-content"],"contentBorderEnd":[4,"content-border-end"],"slimmerAboveFooter":[4,"slimmer-above-footer"],"noAboveFooterPadding":[4,"no-above-footer-padding"],"noBorderAboveFooter":[4,"no-border-above-footer"],"slimmerFooter":[4,"slimmer-footer"],"noFooterPadding":[4,"no-footer-padding"],"footerJustify":[1,"footer-justify"],"noBorderFooter":[4,"no-border-footer"],"hasHeaderSlot":[32],"hasSlottedContent":[32],"hasFooterSlot":[32],"hasAboveFooterSlot":[32],"hasOnlyHeading":[32],"hasOnlyContent":[32],"hasOnlyFooter":[32]}],[1,"gx-ide-title",{"titleCaption":[1,"title-caption"],"type":[1],"alignment":[1],"padding":[516],"noPaddingBottom":[516,"no-padding-bottom"],"border":[516]}]]],["p-c777da28",[[1,"gx-ide-bpm-objects-selector",{"displayTitle":[4,"display-title"],"selection":[1040],"addCallback":[16],"referencesCallback":[16],"objects":[32],"selectedObjects":[32]}]]],["p-8897c6de",[[1,"gx-ide-select-kb-items",{"activeItemCallback":[16],"cancelCallback":[16],"checkboxType":[1,"checkbox-type"],"expandOnClick":[4,"expand-on-click"],"checkedChanged":[16],"confirmCallback":[16],"dialogActions":[16],"itemContextMenuCallback":[16],"itemsList":[16],"showToggleCheckboxes":[4,"show-toggle-checkboxes"],"multiSelection":[4,"multi-selection"],"singleChecks":[4,"single-checks"],"showActiveItemLink":[4,"show-active-item-link"],"selectionChanged":[16],"activeItemNode":[32],"checkedNodesIds":[32],"renderFooter":[32],"nodeListFlattenedTreeModel":[32],"loading":[32],"nodesVersionsViewType":[32],"nodeVersionsListTreeModel":[32],"searchPatternValue":[32],"toggleCheckboxes":[32],"suspendShortcuts":[64],"updateSelection":[64],"updateCheckedItems":[64]},null,{"itemsList":["watchNodeListHandler"]}]]],["p-466bfc7b",[[1,"gx-ide-file-item",{"file":[16],"editable":[4],"fileDeletedCallback":[16],"fileDeletionErrorCallback":[16],"isEditing":[32],"currentName":[32]},null,{"file":["handleFileChange"]}]]],["p-45d9dcbc",[[1,"gx-ide-progress-bar",{"caption":[1],"minimal":[516],"active":[1028],"stateType":[1025,"state-type"],"progress":[1026],"closeType":[1,"close-type"],"closedCallback":[16],"topStateBarVisible":[32],"disableTransition":[32],"visible":[32],"reset":[64]},null,{"active":["watchActiveHandler"],"progress":["watchProgressHandler"]}]]],["p-8b01c337",[[1,"gx-ide-list-selector",{"ordered":[4],"readonly":[4],"type":[1],"required":[4],"ellipsis":[4],"value":[1025],"listName":[1,"list-name"],"noItemsBorder":[4,"no-items-border"],"noListBorder":[516,"no-list-border"]},[[2,"itemSelectionChanged","itemSelectionChangedHandler"]]],[4,"gx-ide-list-selector-item",{"itemId":[513,"item-id"],"itemValue":[1,"item-value"],"itemChecked":[1028,"item-checked"],"readonly":[1540],"ellipsis":[1540],"icon":[1],"noBorder":[1540,"no-border"],"universalSlotEnd":[516,"universal-slot-end"]}]]],["p-42318638",[[1,"gx-ide-status-buttons",{"active":[4],"errors":[2],"hideError":[4,"hide-error"],"warnings":[2],"hideWarning":[4,"hide-warning"],"successes":[2],"hideSuccess":[4,"hide-success"],"messages":[2],"hideMessage":[4,"hide-message"],"minimal":[4],"compact":[516],"noInnerBorders":[516,"no-inner-borders"],"iconsSize":[32]}]]],["p-456dc335",[[4,"gx-ide-chat-container",{"chatTitle":[1,"chat-title"],"copyConversationCallback":[16],"deleteConversationCallback":[16],"displayWelcomeScreen":[4,"display-welcome-screen"],"displayConversationCopiedMessage":[32],"menuIsExpanded":[32],"showCopyConversationMessage":[64]}],[1,"gx-ide-chat-welcome",{"welcomeTitle":[1025,"welcome-title"],"welcomeGreeting":[1025,"welcome-greeting"],"suggestedPrompts":[1040],"suggestedPrompRequestedCallback":[16],"showHeader":[32],"showSuggestedPrompts":[32],"hideWelcome":[32],"exitWelcome":[64]}]]],["p-e0cc8afe",[[0,"gx-ide-launchpad-api",{"data":[16],"onObjectSelected":[16]},null,{"data":["onDataChanged"]}]]],["p-de7532f5",[[1,"gx-ide-launchpad-apis",{"apis":[16],"onObjectSelected":[16]}],[1,"gx-ide-launchpad-native-apps",{"objects":[16],"onObjectSelected":[16],"filterValue":[32],"order":[32],"page":[32],"perPage":[32],"showCopiedMessage":[32],"showQRDialog":[32],"selectedObjectForQR":[32]}],[1,"gx-ide-launchpad-web-apps",{"objects":[16],"onObjectSelected":[16],"filterValue":[32],"recentObjectsExpanded":[32],"order":[32]},[[0,"expandedChange","handleAccordionExpandedChange"]]]]],["p-137757ec",[[1,"gx-ide-entity-selector",{"defaultValue":[16],"disabled":[516],"labelCaption":[1,"label-caption"],"labelPosition":[513,"label-position"],"name":[513],"selectEntityCallback":[16],"value":[1040],"buttonHasFocus":[32],"iconSrc":[32]},null,{"value":["valueChangedHandler"]}]]],["p-855559fe",[[1,"gx-ide-loader",{"abortTime":[2,"abort-time"],"cancelCallback":[16],"cancelLabel":[1,"cancel-label"],"description":[1],"displayBorder":[516,"display-border"],"loaderTitle":[1,"loader-title"],"show":[1028],"showWrapper":[32]}]]],["p-5f7de718",[[1,"gx-ide-empty-state",{"isAnimated":[4,"is-animated"],"stateDescription":[1,"state-description"],"stateIconSrc":[1,"state-icon-src"],"stateTitle":[1,"state-title"]}]]]]'), e)));
17
17
  //# sourceMappingURL=genexus-ide-ui.esm.js.map
@@ -95,7 +95,13 @@ const N = class {
95
95
  this.sinceCommitDate = e;
96
96
  }));
97
97
  y.set(this, (t => {
98
- this.sinceCommitDate = t.detail && t.detail !== "" ? new Date(t.detail) : undefined;
98
+ const i = t.detail;
99
+ if (i && i !== "") {
100
+ const [t, e, s] = i.split("-").map(Number);
101
+ this.sinceCommitDate = new Date(t, e - 1, s);
102
+ } else {
103
+ this.sinceCommitDate = undefined;
104
+ }
99
105
  n(this.validatableControls, "commit-date");
100
106
  }));
101
107
  g.set(this, (t => {
@@ -271,4 +277,4 @@ k = new WeakMap, C = new WeakMap, D = new WeakMap, _ = new WeakMap, M = new Weak
271
277
  N.style = m;
272
278
 
273
279
  export { N as gx_ide_team_dev_bring_all_changes_selector };
274
- //# sourceMappingURL=p-09693b80.entry.js.map
280
+ //# sourceMappingURL=p-a543dfdb.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["bringAllChangesSelectorCss","CSS_BUNDLES","MERGE_ACTION_OPTIONS","fromCommitDate","value","fromCommitNumber","GxIdeBringAllChangesSelector","_GxIdeBringAllChangesSelector_componentLocale","set","this","_GxIdeBringAllChangesSelector_revisionNumberRef","_GxIdeBringAllChangesSelector_revisionDateRef","_GxIdeBringAllChangesSelector_evaluateTooltipRender","controlReference","_b","_a","validatableControls","get","id","hasError","_c","message","h","class","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","_GxIdeBringAllChangesSelector_initializeValidatableControls","forEach","validatableControl","has","reference","undefined","_GxIdeBringAllChangesSelector_cancelClickHandler","async","cancelCallback","_GxIdeBringAllChangesSelector_confirmClickHandler","formSubmitResult","selectedMergeActionData","operationType","selectedOption","fromDate","sinceCommitDate","fromRevision","sinceCommitNumber","confirmCallback","validateControls","_GxIdeBringAllChangesSelector_handleLastDates","lastDates","currentDate","Date","sinceDate","setDate","getDate","_GxIdeBringAllChangesSelector_handleCommitDateValueChanged","event","detail","year","month","day","split","map","Number","clearControlError","_GxIdeBringAllChangesSelector_handleCommitNumberValueChanged","_GxIdeBringAllChangesSelector_handleRadioGroupValueChange","_GxIdeBringAllChangesSelector_confirmButtonDisabled","isNaN","getTime","_GxIdeBringAllChangesSelector_renderCommitDateInput","htmlFor","__classPrivateFieldGet","labels","commitDate","input","type","toISOString","onInput","ref","el","__classPrivateFieldSet","call","_GxIdeBringAllChangesSelector_renderCommitNumberInput","commitNumber","placeholder","placeholders","mode","_GxIdeBringAllChangesSelector_renderLastDatesButtons","onClick","captions","lastSevenDays","lastThirtyDays","lastNinetyDays","Map","componentWillLoad","Locale","getComponentStrings","radioGroupModel","caption","componentDidRender","render","Host","model","selectRange","direction","onChange","buttons","cancel","disabled","confirm"],"sources":["src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.scss?tag=gx-ide-team-dev-bring-all-changes-selector&encapsulation=shadow","src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: 1fr max-content;\n}\n\n.commit-date-container,\n.commit-number-container {\n display: grid;\n gap: 15px;\n}\n\n.commit-date-container {\n grid-template-rows: max-content max-content max-content max-content;\n}\n\n.commit-number-container {\n grid-template-rows: max-content max-content max-content;\n}\n\n.heading {\n margin-block: 0;\n}\n\n.tooltip {\n position: absolute;\n}\n","import { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\nimport {\n ChRadioGroupRenderCustomEvent,\n RadioGroupModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../components\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tooltip\"\n];\n\nconst MERGE_ACTION_OPTIONS = {\n fromCommitDate: {\n value: \"fromCommitDate\"\n },\n fromCommitNumber: {\n value: \"fromCommitNumber\"\n }\n};\n\n@Component({\n tag: \"gx-ide-team-dev-bring-all-changes-selector\",\n styleUrl: \"bring-all-changes-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-all-changes-selector\"]\n})\nexport class GxIdeBringAllChangesSelector {\n #componentLocale: any;\n #revisionNumberRef: HTMLChEditElement;\n #revisionDateRef: HTMLChEditElement;\n @Element() el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;\n /**\n * Date from which the commits will be merged\n */\n @State() sinceCommitDate: Date | undefined = undefined;\n\n /**\n * Number from which the commits will be merged\n */\n @State() sinceCommitNumber: number | undefined = undefined;\n\n /**\n * The selected option from the radio group.\n */\n @State() selectedOption: MergeActionTaken = MERGE_ACTION_OPTIONS\n .fromCommitDate.value as MergeActionTaken;\n\n /**\n * Model for the radio group.\n */\n @State() radioGroupModel: RadioGroupModel = [];\n\n /**\n * Map of validatable controls in the form.\n */\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback!: (\n selectedMergeActionData: SelectedMergeActionData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.radioGroupModel = [\n {\n value: MERGE_ACTION_OPTIONS.fromCommitDate.value,\n caption: this.#componentLocale.captions.commitDate\n },\n {\n value: MERGE_ACTION_OPTIONS.fromCommitNumber.value,\n caption: this.#componentLocale.captions.commitNumber\n }\n ];\n }\n\n componentDidRender() {\n if (this.selectedOption === \"fromCommitDate\" && this.#revisionDateRef) {\n this.#initializeValidatableControls([this.#revisionDateRef]);\n }\n\n if (this.selectedOption === \"fromCommitNumber\" && this.#revisionNumberRef) {\n this.#initializeValidatableControls([this.#revisionNumberRef]);\n }\n }\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #cancelClickHandler = async () => {\n await this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n let formSubmitResult: FormSubmitResult;\n const selectedMergeActionData: SelectedMergeActionData = {\n operationType: this.selectedOption,\n fromDate:\n this.selectedOption === \"fromCommitDate\"\n ? this.sinceCommitDate\n : undefined,\n fromRevision:\n this.selectedOption === \"fromCommitNumber\"\n ? this.sinceCommitNumber\n : undefined\n };\n formSubmitResult = await this.confirmCallback(selectedMergeActionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #handleLastDates = (lastDates: LastDates) => {\n const currentDate = new Date();\n let sinceDate = new Date();\n switch (lastDates) {\n case \"lastSevenDays\":\n sinceDate.setDate(currentDate.getDate() - 7);\n break;\n case \"lastThirtyDays\":\n sinceDate.setDate(currentDate.getDate() - 30);\n break;\n case \"lastNinetyDays\":\n sinceDate.setDate(currentDate.getDate() - 90);\n break;\n }\n this.sinceCommitDate = sinceDate;\n };\n\n #handleCommitDateValueChanged = (event: CustomEvent<string> | InputEvent) => {\n const value = event.detail as string;\n if (value && value !== \"\") {\n const [year, month, day] = value.split(\"-\").map(Number);\n this.sinceCommitDate = new Date(year, month - 1, day);\n } else {\n this.sinceCommitDate = undefined;\n }\n clearControlError(this.validatableControls, \"commit-date\");\n };\n\n #handleCommitNumberValueChanged = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.sinceCommitNumber = Number(event.detail);\n clearControlError(this.validatableControls, \"commit-number\");\n };\n\n #handleRadioGroupValueChange = (\n event: ChRadioGroupRenderCustomEvent<string>\n ) => {\n this.selectedOption = event.detail as MergeActionTaken;\n if (this.selectedOption === \"fromCommitDate\") {\n this.sinceCommitNumber = undefined;\n clearControlError(this.validatableControls, \"commit-number\");\n } else if (this.selectedOption === \"fromCommitNumber\") {\n this.sinceCommitDate = undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n }\n };\n\n #confirmButtonDisabled = (): boolean => {\n if (this.selectedOption === \"fromCommitDate\") {\n // Validate that sinceCommitDate is a valid date\n return !(\n this.sinceCommitDate instanceof Date &&\n !isNaN(this.sinceCommitDate.getTime())\n );\n } else if (this.selectedOption === \"fromCommitNumber\") {\n // Validate that sinceCommitNumber is a valid number\n return !(this.sinceCommitNumber > 0);\n }\n return true;\n };\n\n #renderCommitDateInput = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-date\">\n {this.#componentLocale.labels.commitDate}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-date\")?.hasError\n }}\n id=\"commit-date\"\n type=\"date\"\n value={\n this.sinceCommitDate &&\n this.sinceCommitDate.toISOString().split(\"T\")[0]\n }\n onInput={this.#handleCommitDateValueChanged}\n ref={(el: HTMLChEditElement) =>\n (this.#revisionDateRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionDateRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderCommitNumberInput = () => {\n if (this.selectedOption !== \"fromCommitNumber\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-number\">\n {this.#componentLocale.labels.commitNumber}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-number\")?.hasError\n }}\n id=\"commit-number\"\n type=\"number\"\n placeholder={this.#componentLocale.placeholders.commitNumber}\n onInput={this.#handleCommitNumberValueChanged}\n mode=\"numeric\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionNumberRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionNumberRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderLastDatesButtons = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n\n return (\n <div class=\"layout layout--cols-3\">\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastSevenDays\")}\n >\n {this.#componentLocale.captions.lastSevenDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastThirtyDays\")}\n >\n {this.#componentLocale.captions.lastThirtyDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastNinetyDays\")}\n >\n {this.#componentLocale.captions.lastNinetyDays}\n </button>\n </div>\n </div>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div\n class={{\n \"spacing-body\": true,\n \"commit-date-container\": this.selectedOption === \"fromCommitDate\",\n \"commit-number-container\":\n this.selectedOption === \"fromCommitNumber\"\n }}\n >\n <p class=\"body-regular-m heading\">\n {this.#componentLocale.labels.selectRange}\n </p>\n <ch-radio-group-render\n class=\"radio-group\"\n direction=\"horizontal\"\n model={this.radioGroupModel}\n onChange={this.#handleRadioGroupValueChange}\n value={MERGE_ACTION_OPTIONS.fromCommitDate.value}\n />\n\n {this.#renderLastDatesButtons()}\n {this.#renderCommitDateInput()}\n {this.#renderCommitNumberInput()}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button class=\"button-secondary\" onClick={this.#cancelClickHandler}>\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={this.#confirmButtonDisabled()}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </Host>\n );\n }\n}\n\nexport type SelectedMergeActionData = {\n operationType: MergeActionTaken;\n fromDate?: Date;\n fromRevision?: number;\n};\n\nexport type MergeActionTaken = \"fromCommitDate\" | \"fromCommitNumber\";\n\nexport type LastDates = \"lastSevenDays\" | \"lastThirtyDays\" | \"lastNinetyDays\";\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genexus/genexus-ide-ui",
3
3
  "license": "Apache-2.0",
4
- "version": "1.1.69",
4
+ "version": "1.1.70",
5
5
  "description": "GeneXus IDE UI components",
6
6
  "main": "dist/index.cjs.js",
7
7
  "module": "dist/index.js",
@@ -1 +0,0 @@
1
- {"version":3,"names":["bringAllChangesSelectorCss","CSS_BUNDLES","MERGE_ACTION_OPTIONS","fromCommitDate","value","fromCommitNumber","GxIdeBringAllChangesSelector","_GxIdeBringAllChangesSelector_componentLocale","set","this","_GxIdeBringAllChangesSelector_revisionNumberRef","_GxIdeBringAllChangesSelector_revisionDateRef","_GxIdeBringAllChangesSelector_evaluateTooltipRender","controlReference","_b","_a","validatableControls","get","id","hasError","_c","message","h","class","actionElement","blockAlign","config","tooltipSettings","inlineAlign","delay","_GxIdeBringAllChangesSelector_initializeValidatableControls","forEach","validatableControl","has","reference","undefined","_GxIdeBringAllChangesSelector_cancelClickHandler","async","cancelCallback","_GxIdeBringAllChangesSelector_confirmClickHandler","formSubmitResult","selectedMergeActionData","operationType","selectedOption","fromDate","sinceCommitDate","fromRevision","sinceCommitNumber","confirmCallback","validateControls","_GxIdeBringAllChangesSelector_handleLastDates","lastDates","currentDate","Date","sinceDate","setDate","getDate","_GxIdeBringAllChangesSelector_handleCommitDateValueChanged","event","detail","clearControlError","_GxIdeBringAllChangesSelector_handleCommitNumberValueChanged","Number","_GxIdeBringAllChangesSelector_handleRadioGroupValueChange","_GxIdeBringAllChangesSelector_confirmButtonDisabled","isNaN","getTime","_GxIdeBringAllChangesSelector_renderCommitDateInput","htmlFor","__classPrivateFieldGet","labels","commitDate","input","type","toISOString","split","onInput","ref","el","__classPrivateFieldSet","call","_GxIdeBringAllChangesSelector_renderCommitNumberInput","commitNumber","placeholder","placeholders","mode","_GxIdeBringAllChangesSelector_renderLastDatesButtons","onClick","captions","lastSevenDays","lastThirtyDays","lastNinetyDays","Map","componentWillLoad","Locale","getComponentStrings","radioGroupModel","caption","componentDidRender","render","Host","model","selectRange","direction","onChange","buttons","cancel","disabled","confirm"],"sources":["src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.scss?tag=gx-ide-team-dev-bring-all-changes-selector&encapsulation=shadow","src/components/team-dev/bring-all-changes-selector/bring-all-changes-selector.tsx"],"sourcesContent":[":host {\n display: grid;\n block-size: 100%;\n grid-template-rows: 1fr max-content;\n}\n\n.commit-date-container,\n.commit-number-container {\n display: grid;\n gap: 15px;\n}\n\n.commit-date-container {\n grid-template-rows: max-content max-content max-content max-content;\n}\n\n.commit-number-container {\n grid-template-rows: max-content max-content max-content;\n}\n\n.heading {\n margin-block: 0;\n}\n\n.tooltip {\n position: absolute;\n}\n","import { Component, Element, h, Host, Prop, State } from \"@stencil/core\";\n\nimport {\n ChRadioGroupRenderCustomEvent,\n RadioGroupModel\n} from \"@genexus/chameleon-controls-library\";\nimport { MercuryBundles } from \"@genexus/mercury\";\nimport { Locale } from \"../../../common/locale\";\nimport { FormSubmitResult } from \"../../../components\";\nimport {\n clearControlError,\n ControlValidation,\n validateControls\n} from \"../../../common/form-validation\";\nimport { config } from \"../../../common/config\";\n\nconst CSS_BUNDLES: MercuryBundles = [\n \"resets/box-sizing\",\n \"utils/form\",\n \"utils/spacing\",\n \"utils/layout\",\n \"components/checkbox\",\n \"components/button\",\n \"components/edit\",\n \"components/radio-group\",\n \"components/tooltip\"\n];\n\nconst MERGE_ACTION_OPTIONS = {\n fromCommitDate: {\n value: \"fromCommitDate\"\n },\n fromCommitNumber: {\n value: \"fromCommitNumber\"\n }\n};\n\n@Component({\n tag: \"gx-ide-team-dev-bring-all-changes-selector\",\n styleUrl: \"bring-all-changes-selector.scss\",\n shadow: true,\n assetsDirs: [\"gx-ide-assets/team-dev-bring-all-changes-selector\"]\n})\nexport class GxIdeBringAllChangesSelector {\n #componentLocale: any;\n #revisionNumberRef: HTMLChEditElement;\n #revisionDateRef: HTMLChEditElement;\n @Element() el: HTMLGxIdeTeamDevBringAllChangesSelectorElement;\n /**\n * Date from which the commits will be merged\n */\n @State() sinceCommitDate: Date | undefined = undefined;\n\n /**\n * Number from which the commits will be merged\n */\n @State() sinceCommitNumber: number | undefined = undefined;\n\n /**\n * The selected option from the radio group.\n */\n @State() selectedOption: MergeActionTaken = MERGE_ACTION_OPTIONS\n .fromCommitDate.value as MergeActionTaken;\n\n /**\n * Model for the radio group.\n */\n @State() radioGroupModel: RadioGroupModel = [];\n\n /**\n * Map of validatable controls in the form.\n */\n @State() validatableControls = new Map<string, ControlValidation>();\n\n /**\n * Callback that must be invoked when the 'Cancel' button is pressed.\n */\n @Prop() readonly cancelCallback!: () => Promise<void>;\n\n /**\n * Callback that must be invoked when the 'Confirm' button is pressed.\n */\n @Prop() readonly confirmCallback!: (\n selectedMergeActionData: SelectedMergeActionData\n ) => Promise<FormSubmitResult>;\n\n async componentWillLoad() {\n this.#componentLocale = await Locale.getComponentStrings(this.el);\n this.radioGroupModel = [\n {\n value: MERGE_ACTION_OPTIONS.fromCommitDate.value,\n caption: this.#componentLocale.captions.commitDate\n },\n {\n value: MERGE_ACTION_OPTIONS.fromCommitNumber.value,\n caption: this.#componentLocale.captions.commitNumber\n }\n ];\n }\n\n componentDidRender() {\n if (this.selectedOption === \"fromCommitDate\" && this.#revisionDateRef) {\n this.#initializeValidatableControls([this.#revisionDateRef]);\n }\n\n if (this.selectedOption === \"fromCommitNumber\" && this.#revisionNumberRef) {\n this.#initializeValidatableControls([this.#revisionNumberRef]);\n }\n }\n\n // TODO: evaluate if this should be a global helper function.\n // It is used on other dialogs as well.\n #evaluateTooltipRender = (\n controlReference: HTMLElement\n ): HTMLChTooltipElement =>\n this.validatableControls?.get(controlReference?.id)?.hasError &&\n this.validatableControls.get(controlReference.id)?.message && (\n <ch-tooltip\n class=\"tooltip\"\n actionElement={controlReference as unknown as HTMLButtonElement}\n blockAlign={config.tooltipSettings.blockAlign}\n inlineAlign={config.tooltipSettings.inlineAlign}\n delay={config.tooltipSettings.delay}\n >\n {this.validatableControls.get(controlReference.id).message}\n </ch-tooltip>\n );\n\n #initializeValidatableControls = (validatableControls: HTMLElement[]) => {\n validatableControls.forEach(validatableControl => {\n if (\n validatableControl.id &&\n !this.validatableControls.has(validatableControl.id)\n ) {\n this.validatableControls.set(validatableControl.id, {\n reference: validatableControl,\n hasError: false,\n message: undefined\n });\n }\n });\n };\n\n #cancelClickHandler = async () => {\n await this.cancelCallback();\n };\n\n #confirmClickHandler = async () => {\n let formSubmitResult: FormSubmitResult;\n const selectedMergeActionData: SelectedMergeActionData = {\n operationType: this.selectedOption,\n fromDate:\n this.selectedOption === \"fromCommitDate\"\n ? this.sinceCommitDate\n : undefined,\n fromRevision:\n this.selectedOption === \"fromCommitNumber\"\n ? this.sinceCommitNumber\n : undefined\n };\n formSubmitResult = await this.confirmCallback(selectedMergeActionData);\n this.validatableControls = validateControls(\n formSubmitResult,\n this.validatableControls\n );\n };\n\n #handleLastDates = (lastDates: LastDates) => {\n const currentDate = new Date();\n let sinceDate = new Date();\n switch (lastDates) {\n case \"lastSevenDays\":\n sinceDate.setDate(currentDate.getDate() - 7);\n break;\n case \"lastThirtyDays\":\n sinceDate.setDate(currentDate.getDate() - 30);\n break;\n case \"lastNinetyDays\":\n sinceDate.setDate(currentDate.getDate() - 90);\n break;\n }\n this.sinceCommitDate = sinceDate;\n };\n\n #handleCommitDateValueChanged = (event: CustomEvent<string> | InputEvent) => {\n this.sinceCommitDate =\n event.detail && event.detail !== \"\" ? new Date(event.detail) : undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n };\n\n #handleCommitNumberValueChanged = (\n event: CustomEvent<string> | InputEvent\n ) => {\n this.sinceCommitNumber = Number(event.detail);\n clearControlError(this.validatableControls, \"commit-number\");\n };\n\n #handleRadioGroupValueChange = (\n event: ChRadioGroupRenderCustomEvent<string>\n ) => {\n this.selectedOption = event.detail as MergeActionTaken;\n if (this.selectedOption === \"fromCommitDate\") {\n this.sinceCommitNumber = undefined;\n clearControlError(this.validatableControls, \"commit-number\");\n } else if (this.selectedOption === \"fromCommitNumber\") {\n this.sinceCommitDate = undefined;\n clearControlError(this.validatableControls, \"commit-date\");\n }\n };\n\n #confirmButtonDisabled = (): boolean => {\n if (this.selectedOption === \"fromCommitDate\") {\n // Validate that sinceCommitDate is a valid date\n return !(\n this.sinceCommitDate instanceof Date &&\n !isNaN(this.sinceCommitDate.getTime())\n );\n } else if (this.selectedOption === \"fromCommitNumber\") {\n // Validate that sinceCommitNumber is a valid number\n return !(this.sinceCommitNumber > 0);\n }\n return true;\n };\n\n #renderCommitDateInput = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-date\">\n {this.#componentLocale.labels.commitDate}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-date\")?.hasError\n }}\n id=\"commit-date\"\n type=\"date\"\n value={\n this.sinceCommitDate &&\n this.sinceCommitDate.toISOString().split(\"T\")[0]\n }\n onInput={this.#handleCommitDateValueChanged}\n ref={(el: HTMLChEditElement) =>\n (this.#revisionDateRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionDateRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderCommitNumberInput = () => {\n if (this.selectedOption !== \"fromCommitNumber\") {\n return null;\n }\n return (\n <div class=\"layout layout--cols-2-1\">\n <div class=\"layout__panel\">\n <div class=\"field field-block\">\n <label class=\"label\" htmlFor=\"commit-number\">\n {this.#componentLocale.labels.commitNumber}\n </label>\n <ch-edit\n class={{\n \"input\": true,\n \"input-error\":\n this.validatableControls.get(\"commit-number\")?.hasError\n }}\n id=\"commit-number\"\n type=\"number\"\n placeholder={this.#componentLocale.placeholders.commitNumber}\n onInput={this.#handleCommitNumberValueChanged}\n mode=\"numeric\"\n ref={(el: HTMLChEditElement) =>\n (this.#revisionNumberRef = el as HTMLChEditElement)\n }\n />\n {this.#evaluateTooltipRender(this.#revisionNumberRef)}\n </div>\n </div>\n </div>\n );\n };\n\n #renderLastDatesButtons = () => {\n if (this.selectedOption !== \"fromCommitDate\") {\n return null;\n }\n\n return (\n <div class=\"layout layout--cols-3\">\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastSevenDays\")}\n >\n {this.#componentLocale.captions.lastSevenDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastThirtyDays\")}\n >\n {this.#componentLocale.captions.lastThirtyDays}\n </button>\n </div>\n <div class=\"layout__panel\">\n <button\n class=\"button-secondary\"\n onClick={() => this.#handleLastDates(\"lastNinetyDays\")}\n >\n {this.#componentLocale.captions.lastNinetyDays}\n </button>\n </div>\n </div>\n );\n };\n\n render() {\n return (\n <Host class=\"widget\">\n <ch-theme model={CSS_BUNDLES}></ch-theme>\n <div\n class={{\n \"spacing-body\": true,\n \"commit-date-container\": this.selectedOption === \"fromCommitDate\",\n \"commit-number-container\":\n this.selectedOption === \"fromCommitNumber\"\n }}\n >\n <p class=\"body-regular-m heading\">\n {this.#componentLocale.labels.selectRange}\n </p>\n <ch-radio-group-render\n class=\"radio-group\"\n direction=\"horizontal\"\n model={this.radioGroupModel}\n onChange={this.#handleRadioGroupValueChange}\n value={MERGE_ACTION_OPTIONS.fromCommitDate.value}\n />\n\n {this.#renderLastDatesButtons()}\n {this.#renderCommitDateInput()}\n {this.#renderCommitNumberInput()}\n </div>\n\n <footer class=\"control-footer-with-border spacing-body\">\n <div class=\"buttons-spacer\">\n <button class=\"button-secondary\" onClick={this.#cancelClickHandler}>\n {this.#componentLocale.buttons.cancel}\n </button>\n\n <button\n class=\"button-primary\"\n onClick={this.#confirmClickHandler}\n disabled={this.#confirmButtonDisabled()}\n >\n {this.#componentLocale.buttons.confirm}\n </button>\n </div>\n </footer>\n </Host>\n );\n }\n}\n\nexport type SelectedMergeActionData = {\n operationType: MergeActionTaken;\n fromDate?: Date;\n fromRevision?: number;\n};\n\nexport type MergeActionTaken = \"fromCommitDate\" | \"fromCommitNumber\";\n\nexport type LastDates = \"lastSevenDays\" | \"lastThirtyDays\" | \"lastNinetyDays\";\n"],"mappings":"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"}