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 "@angular/common";
import * as i2 from "@memberjunction/ng-user-view-grid";
import * as i3 from "@memberjunction/ng-base-forms";
import * as i4 from "@memberjunction/ng-form-toolbar";
function ArtifactFormComponent_div_17_Template(rf, ctx) { if (rf & 1) {
    const _r1 = i0.ɵɵgetCurrentView();
    i0.ɵɵelementStart(0, "div")(1, "mj-user-view-grid", 20);
    i0.ɵɵlistener("dataLoaded", function ArtifactFormComponent_div_17_Template_mj_user_view_grid_dataLoaded_1_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.SetSectionRowCount("mJArtifactVersions", $event.totalRowCount)); });
    i0.ɵɵelementEnd()();
} if (rf & 2) {
    const ctx_r1 = i0.ɵɵnextContext();
    i0.ɵɵadvance();
    i0.ɵɵproperty("Params", ctx_r1.BuildRelationshipViewParamsByEntityName("MJ: Artifact Versions", "ArtifactID"))("NewRecordValues", ctx_r1.NewRecordValues("MJ: Artifact Versions"))("AllowLoad", ctx_r1.IsSectionExpanded("mJArtifactVersions"))("EditMode", ctx_r1.GridEditMode());
} }
function ArtifactFormComponent_div_19_Template(rf, ctx) { if (rf & 1) {
    const _r3 = i0.ɵɵgetCurrentView();
    i0.ɵɵelementStart(0, "div")(1, "mj-user-view-grid", 20);
    i0.ɵɵlistener("dataLoaded", function ArtifactFormComponent_div_19_Template_mj_user_view_grid_dataLoaded_1_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.SetSectionRowCount("mJCollectionArtifacts", $event.totalRowCount)); });
    i0.ɵɵelementEnd()();
} if (rf & 2) {
    const ctx_r1 = i0.ɵɵnextContext();
    i0.ɵɵadvance();
    i0.ɵɵproperty("Params", ctx_r1.BuildRelationshipViewParamsByEntityName("MJ: Collection Artifacts", "ArtifactID"))("NewRecordValues", ctx_r1.NewRecordValues("MJ: Collection Artifacts"))("AllowLoad", ctx_r1.IsSectionExpanded("mJCollectionArtifacts"))("EditMode", ctx_r1.GridEditMode());
} }
function ArtifactFormComponent_div_21_Template(rf, ctx) { if (rf & 1) {
    const _r4 = i0.ɵɵgetCurrentView();
    i0.ɵɵelementStart(0, "div")(1, "mj-user-view-grid", 20);
    i0.ɵɵlistener("dataLoaded", function ArtifactFormComponent_div_21_Template_mj_user_view_grid_dataLoaded_1_listener($event) { i0.ɵɵrestoreView(_r4); const ctx_r1 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r1.SetSectionRowCount("mJArtifactPermissions", $event.totalRowCount)); });
    i0.ɵɵelementEnd()();
} if (rf & 2) {
    const ctx_r1 = i0.ɵɵnextContext();
    i0.ɵɵadvance();
    i0.ɵɵproperty("Params", ctx_r1.BuildRelationshipViewParamsByEntityName("MJ: Artifact Permissions", "ArtifactID"))("NewRecordValues", ctx_r1.NewRecordValues("MJ: Artifact Permissions"))("AllowLoad", ctx_r1.IsSectionExpanded("mJArtifactPermissions"))("EditMode", ctx_r1.GridEditMode());
} }
let ArtifactFormComponent = class ArtifactFormComponent extends BaseFormComponent {
    async ngOnInit() {
        await super.ngOnInit();
        this.initSections([
            { sectionKey: 'ownershipContext', sectionName: 'Ownership & Context', isExpanded: true },
            { sectionKey: 'artifactCore', sectionName: 'Artifact Core', isExpanded: true },
            { sectionKey: 'systemMetadata', sectionName: 'System Metadata', isExpanded: false },
            { sectionKey: 'mJArtifactVersions', sectionName: 'MJ: Artifact Versions', isExpanded: false },
            { sectionKey: 'mJCollectionArtifacts', sectionName: 'MJ: Collection Artifacts', isExpanded: false },
            { sectionKey: 'mJArtifactPermissions', sectionName: 'MJ: Artifact Permissions', isExpanded: false }
        ]);
    }
    static { this.ɵfac = /*@__PURE__*/ (() => { let ɵArtifactFormComponent_BaseFactory; return function ArtifactFormComponent_Factory(t) { return (ɵArtifactFormComponent_BaseFactory || (ɵArtifactFormComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ArtifactFormComponent)))(t || ArtifactFormComponent); }; })(); }
    static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ArtifactFormComponent, selectors: [["gen-artifact-form"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 22, vars: 68, consts: [[3, "record", "formComponent"], ["slot", "field-panels", "sectionKey", "ownershipContext", "sectionName", "Ownership & Context", "icon", "fa fa-user", 3, "form", "formContext"], ["FieldName", "EnvironmentID", "Type", "textbox", "LinkType", "Record", "LinkComponentType", "Search", 3, "record", "ShowLabel", "EditMode", "formContext"], ["FieldName", "UserID", "Type", "textbox", "LinkType", "Record", "LinkComponentType", "Search", 3, "record", "ShowLabel", "EditMode", "formContext"], ["FieldName", "Environment", "Type", "textbox", 3, "record", "ShowLabel", "EditMode", "formContext"], ["FieldName", "User", "Type", "textbox", 3, "record", "ShowLabel", "EditMode", "formContext"], ["slot", "field-panels", "sectionKey", "artifactCore", "sectionName", "Artifact Core", "icon", "fa fa-file-alt", 3, "form", "formContext"], ["FieldName", "Name", "Type", "textarea", 3, "record", "ShowLabel", "EditMode", "formContext"], ["FieldName", "Description", "Type", "textarea", 3, "record", "ShowLabel", "EditMode", "formContext"], ["FieldName", "TypeID", "Type", "textbox", "LinkType", "Record", "LinkComponentType", "Search", 3, "record", "ShowLabel", "EditMode", "formContext"], ["FieldName", "Comments", "Type", "textarea", 3, "record", "ShowLabel", "EditMode", "formContext"], ["FieldName", "Visibility", "Type", "dropdownlist", 3, "record", "ShowLabel", "EditMode", "formContext"], ["FieldName", "Type", "Type", "textbox", 3, "record", "ShowLabel", "EditMode", "formContext"], ["slot", "field-panels", "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"], ["slot", "after-panels", "sectionKey", "mJArtifactVersions", "sectionName", "MJ: Artifact Versions", "icon", "fa fa-history", "variant", "related-entity", 3, "form", "formContext", "badgeCount"], [4, "ngIf"], ["slot", "after-panels", "sectionKey", "mJCollectionArtifacts", "sectionName", "MJ: Collection Artifacts", "icon", "fa fa-folder-open", "variant", "related-entity", 3, "form", "formContext", "badgeCount"], ["slot", "after-panels", "sectionKey", "mJArtifactPermissions", "sectionName", "MJ: Artifact Permissions", "icon", "fa fa-key", "variant", "related-entity", 3, "form", "formContext", "badgeCount"], [3, "dataLoaded", "Params", "NewRecordValues", "AllowLoad", "EditMode"]], template: function ArtifactFormComponent_Template(rf, ctx) { if (rf & 1) {
            i0.ɵɵelementStart(0, "mj-record-form-container", 0)(1, "mj-collapsible-panel", 1);
            i0.ɵɵelement(2, "mj-form-field", 2)(3, "mj-form-field", 3)(4, "mj-form-field", 4)(5, "mj-form-field", 5);
            i0.ɵɵelementEnd();
            i0.ɵɵelementStart(6, "mj-collapsible-panel", 6);
            i0.ɵɵelement(7, "mj-form-field", 7)(8, "mj-form-field", 8)(9, "mj-form-field", 9)(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();
            i0.ɵɵelementStart(16, "mj-collapsible-panel", 16);
            i0.ɵɵtemplate(17, ArtifactFormComponent_div_17_Template, 2, 4, "div", 17);
            i0.ɵɵelementEnd();
            i0.ɵɵelementStart(18, "mj-collapsible-panel", 18);
            i0.ɵɵtemplate(19, ArtifactFormComponent_div_19_Template, 2, 4, "div", 17);
            i0.ɵɵelementEnd();
            i0.ɵɵelementStart(20, "mj-collapsible-panel", 19);
            i0.ɵɵtemplate(21, ArtifactFormComponent_div_21_Template, 2, 4, "div", 17);
            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("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("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("form", ctx)("formContext", ctx.formContext)("badgeCount", ctx.GetSectionRowCount("mJArtifactVersions"));
            i0.ɵɵadvance();
            i0.ɵɵproperty("ngIf", ctx.record.IsSaved);
            i0.ɵɵadvance();
            i0.ɵɵproperty("form", ctx)("formContext", ctx.formContext)("badgeCount", ctx.GetSectionRowCount("mJCollectionArtifacts"));
            i0.ɵɵadvance();
            i0.ɵɵproperty("ngIf", ctx.record.IsSaved);
            i0.ɵɵadvance();
            i0.ɵɵproperty("form", ctx)("formContext", ctx.formContext)("badgeCount", ctx.GetSectionRowCount("mJArtifactPermissions"));
            i0.ɵɵadvance();
            i0.ɵɵproperty("ngIf", ctx.record.IsSaved);
        } }, dependencies: [i1.NgIf, i2.UserViewGridComponent, i3.MJFormField, i3.CollapsiblePanelComponent, i4.RecordFormContainerComponent], encapsulation: 2 }); }
};
ArtifactFormComponent = __decorate([
    RegisterClass(BaseFormComponent, 'MJ: Artifacts') // Tell MemberJunction about this class
], ArtifactFormComponent);
export { ArtifactFormComponent };
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ArtifactFormComponent, [{
        type: Component,
        args: [{ selector: 'gen-artifact-form', template: "<mj-record-form-container [record]=\"record\" [formComponent]=\"this\">\n\n    <!-- ========================================\n         FIELD PANELS\n         ======================================== -->\n    <!-- Ownership & Context Section -->\n    <mj-collapsible-panel slot=\"field-panels\"\n        sectionKey=\"ownershipContext\"\n        sectionName=\"Ownership & Context\"\n        icon=\"fa fa-user\"\n        [form]=\"this\"\n        [formContext]=\"formContext\">\n        <mj-form-field \n            [record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"EnvironmentID\"\n            Type=\"textbox\"\n            [EditMode]=\"EditMode\"\n            [formContext]=\"formContext\"\n            LinkType=\"Record\"\n            LinkComponentType=\"Search\"\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            LinkComponentType=\"Search\"\n        ></mj-form-field>\n        <mj-form-field \n            [record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"Environment\"\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=\"User\"\n            Type=\"textbox\"\n            [EditMode]=\"EditMode\"\n            [formContext]=\"formContext\"\n        ></mj-form-field>\n\n    </mj-collapsible-panel>\n\n    <!-- Artifact Core Section -->\n    <mj-collapsible-panel slot=\"field-panels\"\n        sectionKey=\"artifactCore\"\n        sectionName=\"Artifact Core\"\n        icon=\"fa fa-file-alt\"\n        [form]=\"this\"\n        [formContext]=\"formContext\">\n        <mj-form-field \n            [record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"Name\"\n            Type=\"textarea\"\n            [EditMode]=\"EditMode\"\n            [formContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"Description\"\n            Type=\"textarea\"\n            [EditMode]=\"EditMode\"\n            [formContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"TypeID\"\n            Type=\"textbox\"\n            [EditMode]=\"EditMode\"\n            [formContext]=\"formContext\"\n            LinkType=\"Record\"\n            LinkComponentType=\"Search\"\n        ></mj-form-field>\n        <mj-form-field \n            [record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"Comments\"\n            Type=\"textarea\"\n            [EditMode]=\"EditMode\"\n            [formContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"Visibility\"\n            Type=\"dropdownlist\"\n            [EditMode]=\"EditMode\"\n            [formContext]=\"formContext\"\n        ></mj-form-field>\n        <mj-form-field \n            [record]=\"record\"\n            [ShowLabel]=\"true\"\n            FieldName=\"Type\"\n            Type=\"textbox\"\n            [EditMode]=\"EditMode\"\n            [formContext]=\"formContext\"\n        ></mj-form-field>\n\n    </mj-collapsible-panel>\n\n    <!-- System Metadata Section -->\n    <mj-collapsible-panel slot=\"field-panels\"\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    <!-- ========================================\n         RELATED ENTITY PANELS - AFTER\n         ======================================== -->\n\n    <!-- MJ: Artifact Versions Section -->\n    <mj-collapsible-panel slot=\"after-panels\"\n        sectionKey=\"mJArtifactVersions\"\n        sectionName=\"MJ: Artifact Versions\"\n        icon=\"fa fa-history\"\n        variant=\"related-entity\"\n        [form]=\"this\"\n        [formContext]=\"formContext\"\n        [badgeCount]=\"GetSectionRowCount('mJArtifactVersions')\">\n        <div *ngIf=\"record.IsSaved\">\n            <mj-user-view-grid\n                [Params]=\"BuildRelationshipViewParamsByEntityName('MJ: Artifact Versions','ArtifactID')\"\n                [NewRecordValues]=\"NewRecordValues('MJ: Artifact Versions')\"\n                [AllowLoad]=\"IsSectionExpanded('mJArtifactVersions')\"\n                [EditMode]=\"GridEditMode()\"\n                (dataLoaded)=\"SetSectionRowCount('mJArtifactVersions', $event.totalRowCount)\"\n                >\n            </mj-user-view-grid>\n        </div>\n    </mj-collapsible-panel>\n\n    <!-- MJ: Collection Artifacts Section -->\n    <mj-collapsible-panel slot=\"after-panels\"\n        sectionKey=\"mJCollectionArtifacts\"\n        sectionName=\"MJ: Collection Artifacts\"\n        icon=\"fa fa-folder-open\"\n        variant=\"related-entity\"\n        [form]=\"this\"\n        [formContext]=\"formContext\"\n        [badgeCount]=\"GetSectionRowCount('mJCollectionArtifacts')\">\n        <div *ngIf=\"record.IsSaved\">\n            <mj-user-view-grid\n                [Params]=\"BuildRelationshipViewParamsByEntityName('MJ: Collection Artifacts','ArtifactID')\"\n                [NewRecordValues]=\"NewRecordValues('MJ: Collection Artifacts')\"\n                [AllowLoad]=\"IsSectionExpanded('mJCollectionArtifacts')\"\n                [EditMode]=\"GridEditMode()\"\n                (dataLoaded)=\"SetSectionRowCount('mJCollectionArtifacts', $event.totalRowCount)\"\n                >\n            </mj-user-view-grid>\n        </div>\n    </mj-collapsible-panel>\n\n    <!-- MJ: Artifact Permissions Section -->\n    <mj-collapsible-panel slot=\"after-panels\"\n        sectionKey=\"mJArtifactPermissions\"\n        sectionName=\"MJ: Artifact Permissions\"\n        icon=\"fa fa-key\"\n        variant=\"related-entity\"\n        [form]=\"this\"\n        [formContext]=\"formContext\"\n        [badgeCount]=\"GetSectionRowCount('mJArtifactPermissions')\">\n        <div *ngIf=\"record.IsSaved\">\n            <mj-user-view-grid\n                [Params]=\"BuildRelationshipViewParamsByEntityName('MJ: Artifact Permissions','ArtifactID')\"\n                [NewRecordValues]=\"NewRecordValues('MJ: Artifact Permissions')\"\n                [AllowLoad]=\"IsSectionExpanded('mJArtifactPermissions')\"\n                [EditMode]=\"GridEditMode()\"\n                (dataLoaded)=\"SetSectionRowCount('mJArtifactPermissions', $event.totalRowCount)\"\n                >\n            </mj-user-view-grid>\n        </div>\n    </mj-collapsible-panel>\n</mj-record-form-container>\n        " }]
    }], null, null); })();
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ArtifactFormComponent, { className: "ArtifactFormComponent", filePath: "src/lib/generated/Entities/Artifact/artifact.form.component.ts", lineNumber: 12 }); })();
export function LoadArtifactFormComponent() {
    // does nothing, but called to prevent tree-shaking from eliminating this component from the build
}
//# sourceMappingURL=artifact.form.component.js.map