var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
import { Component } from '@angular/core';
import { RegisterClass } from '@memberjunction/global';
import { BaseFormComponent } from '@memberjunction/ng-base-forms';
import * as i0 from "@angular/core";
import * as i1 from "@memberjunction/ng-base-forms";
let MJPublicLinkFormComponent = class MJPublicLinkFormComponent extends BaseFormComponent {
    async ngOnInit() {
        await super.ngOnInit();
        this.initSections([
            { sectionKey: 'resourceReference', sectionName: 'Resource Reference', isExpanded: true },
            { sectionKey: 'linkCore', sectionName: 'Link Core', isExpanded: true },
            { sectionKey: 'accessControls', sectionName: 'Access Controls', isExpanded: false },
            { sectionKey: 'systemMetadata', sectionName: 'System Metadata', isExpanded: false }
        ]);
    }
    static { this.ɵfac = /*@__PURE__*/ (() => { let ɵMJPublicLinkFormComponent_BaseFactory; return function MJPublicLinkFormComponent_Factory(__ngFactoryType__) { return (ɵMJPublicLinkFormComponent_BaseFactory || (ɵMJPublicLinkFormComponent_BaseFactory = i0.ɵɵgetInheritedFactory(MJPublicLinkFormComponent)))(__ngFactoryType__ || MJPublicLinkFormComponent); }; })(); }
    static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MJPublicLinkFormComponent, selectors: [["gen-mjpubliclink-form"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 16, vars: 54, consts: [[3, "Navigate", "DeleteRequested", "FavoriteToggled", "HistoryRequested", "ListManagementRequested", "Record", "FormComponent"], ["SectionKey", "resourceReference", "SectionName", "Resource Reference", "Icon", "fa fa-share-alt", 3, "Form", "FormContext"], ["FieldName", "ResourceType", "Type", "select", 3, "Record", "ShowLabel", "EditMode", "FormContext"], ["FieldName", "ResourceID", "Type", "textbox", 3, "Record", "ShowLabel", "EditMode", "FormContext"], ["FieldName", "UserID", "Type", "textbox", "LinkType", "Record", 3, "Record", "ShowLabel", "EditMode", "FormContext"], ["SectionKey", "linkCore", "SectionName", "Link Core", "Icon", "fa fa-link", 3, "Form", "FormContext"], ["FieldName", "Token", "Type", "textbox", 3, "Record", "ShowLabel", "EditMode", "FormContext"], ["FieldName", "CurrentViews", "Type", "number", 3, "Record", "ShowLabel", "EditMode", "FormContext"], ["FieldName", "IsActive", "Type", "checkbox", 3, "Record", "ShowLabel", "EditMode", "FormContext"], ["SectionKey", "accessControls", "SectionName", "Access Controls", "Icon", "fa fa-lock", 3, "Form", "FormContext"], ["FieldName", "PasswordHash", "Type", "textbox", 3, "Record", "ShowLabel", "EditMode", "FormContext"], ["FieldName", "ExpiresAt", "Type", "datepicker", 3, "Record", "ShowLabel", "EditMode", "FormContext"], ["FieldName", "MaxViews", "Type", "number", 3, "Record", "ShowLabel", "EditMode", "FormContext"], ["SectionKey", "systemMetadata", "SectionName", "System Metadata", "Icon", "fa fa-cog", 3, "Form", "FormContext"], ["FieldName", "__mj_CreatedAt", "Type", "textbox", 3, "Record", "ShowLabel", "EditMode", "FormContext"], ["FieldName", "__mj_UpdatedAt", "Type", "textbox", 3, "Record", "ShowLabel", "EditMode", "FormContext"]], template: function MJPublicLinkFormComponent_Template(rf, ctx) { if (rf & 1) {
            i0.ɵɵelementStart(0, "mj-record-form-container", 0);
            i0.ɵɵlistener("Navigate", function MJPublicLinkFormComponent_Template_mj_record_form_container_Navigate_0_listener($event) { return ctx.OnFormNavigate($event); })("DeleteRequested", function MJPublicLinkFormComponent_Template_mj_record_form_container_DeleteRequested_0_listener() { return ctx.OnDeleteRequested(); })("FavoriteToggled", function MJPublicLinkFormComponent_Template_mj_record_form_container_FavoriteToggled_0_listener() { return ctx.OnFavoriteToggled(); })("HistoryRequested", function MJPublicLinkFormComponent_Template_mj_record_form_container_HistoryRequested_0_listener() { return ctx.OnHistoryRequested(); })("ListManagementRequested", function MJPublicLinkFormComponent_Template_mj_record_form_container_ListManagementRequested_0_listener() { return ctx.OnListManagementRequested(); });
            i0.ɵɵelementStart(1, "mj-collapsible-panel", 1);
            i0.ɵɵelement(2, "mj-form-field", 2)(3, "mj-form-field", 3)(4, "mj-form-field", 4);
            i0.ɵɵelementEnd();
            i0.ɵɵelementStart(5, "mj-collapsible-panel", 5);
            i0.ɵɵelement(6, "mj-form-field", 6)(7, "mj-form-field", 7)(8, "mj-form-field", 8);
            i0.ɵɵelementEnd();
            i0.ɵɵelementStart(9, "mj-collapsible-panel", 9);
            i0.ɵɵelement(10, "mj-form-field", 10)(11, "mj-form-field", 11)(12, "mj-form-field", 12);
            i0.ɵɵelementEnd();
            i0.ɵɵelementStart(13, "mj-collapsible-panel", 13);
            i0.ɵɵelement(14, "mj-form-field", 14)(15, "mj-form-field", 15);
            i0.ɵɵelementEnd()();
        } if (rf & 2) {
            i0.ɵɵproperty("Record", ctx.record)("FormComponent", ctx);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Form", ctx)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Form", ctx)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Form", ctx)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Form", ctx)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
            i0.ɵɵadvance();
            i0.ɵɵproperty("Record", ctx.record)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.formContext);
        } }, dependencies: [i1.MjFormFieldComponent, i1.MjCollapsiblePanelComponent, i1.MjRecordFormContainerComponent], encapsulation: 2 }); }
};
MJPublicLinkFormComponent = __decorate([
    RegisterClass(BaseFormComponent, 'MJ: Public Links') // Tell MemberJunction about this class
], MJPublicLinkFormComponent);
export { MJPublicLinkFormComponent };
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MJPublicLinkFormComponent, [{
        type: Component,
        args: [{ standalone: false, selector: 'gen-mjpubliclink-form', template: "<mj-record-form-container [Record]=\"record\" [FormComponent]=\"this\"\n    (Navigate)=\"OnFormNavigate($event)\"\n    (DeleteRequested)=\"OnDeleteRequested()\"\n    (FavoriteToggled)=\"OnFavoriteToggled()\"\n    (HistoryRequested)=\"OnHistoryRequested()\"\n    (ListManagementRequested)=\"OnListManagementRequested()\">\n\n    <!-- ========================================\n         FIELD PANELS\n         ======================================== -->\n    <!-- Resource Reference Section -->\n    <mj-collapsible-panel\n        SectionKey=\"resourceReference\"\n        SectionName=\"Resource Reference\"\n        Icon=\"fa fa-share-alt\"\n        [Form]=\"this\"\n        [FormContext]=\"formContext\">\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"ResourceType\"\n            Type=\"select\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"ResourceID\"\n            Type=\"textbox\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"UserID\"\n            Type=\"textbox\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n            LinkType=\"Record\"\n        ></mj-form-field>\n\n    </mj-collapsible-panel>\n\n    <!-- Link Core Section -->\n    <mj-collapsible-panel\n        SectionKey=\"linkCore\"\n        SectionName=\"Link Core\"\n        Icon=\"fa fa-link\"\n        [Form]=\"this\"\n        [FormContext]=\"formContext\">\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"Token\"\n            Type=\"textbox\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"CurrentViews\"\n            Type=\"number\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"IsActive\"\n            Type=\"checkbox\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n        ></mj-form-field>\n\n    </mj-collapsible-panel>\n\n    <!-- Access Controls Section -->\n    <mj-collapsible-panel\n        SectionKey=\"accessControls\"\n        SectionName=\"Access Controls\"\n        Icon=\"fa fa-lock\"\n        [Form]=\"this\"\n        [FormContext]=\"formContext\">\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"PasswordHash\"\n            Type=\"textbox\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"ExpiresAt\"\n            Type=\"datepicker\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"MaxViews\"\n            Type=\"number\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n        ></mj-form-field>\n\n    </mj-collapsible-panel>\n\n    <!-- System Metadata Section -->\n    <mj-collapsible-panel\n        SectionKey=\"systemMetadata\"\n        SectionName=\"System Metadata\"\n        Icon=\"fa fa-cog\"\n        [Form]=\"this\"\n        [FormContext]=\"formContext\">\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"__mj_CreatedAt\"\n            Type=\"textbox\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [Record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"__mj_UpdatedAt\"\n            Type=\"textbox\"\n            [EditMode]=\"EditMode\"\n            [FormContext]=\"formContext\"\n        ></mj-form-field>\n\n    </mj-collapsible-panel>\n</mj-record-form-container>\n        " }]
    }], null, null); })();
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(MJPublicLinkFormComponent, { className: "MJPublicLinkFormComponent", filePath: "src/lib/generated/Entities/MJPublicLink/mjpubliclink.form.component.ts", lineNumber: 12 }); })();
//# sourceMappingURL=mjpubliclink.form.component.js.map