@mj-biz-apps/orders-ng 5.6.0 → 5.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/custom/OrderHeader/order-header-form.component.d.ts +0 -4
- package/dist/lib/custom/OrderHeader/order-header-form.component.d.ts.map +1 -1
- package/dist/lib/custom/OrderHeader/order-header-form.component.js +139 -284
- package/dist/lib/custom/OrderHeader/order-header-form.component.js.map +1 -1
- package/dist/lib/custom/OrderHeader/order-lines-editor.component.d.ts +38 -1
- package/dist/lib/custom/OrderHeader/order-lines-editor.component.d.ts.map +1 -1
- package/dist/lib/custom/OrderHeader/order-lines-editor.component.js +526 -112
- package/dist/lib/custom/OrderHeader/order-lines-editor.component.js.map +1 -1
- package/dist/lib/custom/OrderHeader/party-address-picker.component.d.ts +67 -0
- package/dist/lib/custom/OrderHeader/party-address-picker.component.d.ts.map +1 -0
- package/dist/lib/custom/OrderHeader/party-address-picker.component.js +430 -0
- package/dist/lib/custom/OrderHeader/party-address-picker.component.js.map +1 -0
- package/dist/lib/custom/Product/product-form.component.d.ts +1 -3
- package/dist/lib/custom/Product/product-form.component.d.ts.map +1 -1
- package/dist/lib/custom/Product/product-form.component.js +6 -7
- package/dist/lib/custom/Product/product-form.component.js.map +1 -1
- package/dist/lib/custom/Product/widgets/product-accounting-widget.component.js +4 -9
- package/dist/lib/custom/Product/widgets/product-accounting-widget.component.js.map +1 -1
- package/dist/lib/custom/Product/widgets/product-pricing-widget.component.d.ts +69 -4
- package/dist/lib/custom/Product/widgets/product-pricing-widget.component.d.ts.map +1 -1
- package/dist/lib/custom/Product/widgets/product-pricing-widget.component.js +845 -314
- package/dist/lib/custom/Product/widgets/product-pricing-widget.component.js.map +1 -1
- package/dist/lib/custom/custom-forms.module.d.ts +10 -7
- package/dist/lib/custom/custom-forms.module.d.ts.map +1 -1
- package/dist/lib/custom/custom-forms.module.js +12 -0
- package/dist/lib/custom/custom-forms.module.js.map +1 -1
- package/dist/lib/data/entity-names.d.ts +2 -0
- package/dist/lib/data/entity-names.d.ts.map +1 -1
- package/dist/lib/data/entity-names.js +2 -0
- package/dist/lib/data/entity-names.js.map +1 -1
- package/dist/lib/data/orders-queries.d.ts +11 -2
- package/dist/lib/data/orders-queries.d.ts.map +1 -1
- package/dist/lib/data/orders-queries.js +29 -41
- package/dist/lib/data/orders-queries.js.map +1 -1
- package/dist/lib/form-panels/catalog-overviews.panels.d.ts.map +1 -1
- package/dist/lib/form-panels/catalog-overviews.panels.js +7 -6
- package/dist/lib/form-panels/catalog-overviews.panels.js.map +1 -1
- package/dist/lib/form-panels/commercial-overviews.panels.js +1 -1
- package/dist/lib/form-panels/commercial-overviews.panels.js.map +1 -1
- package/dist/lib/form-panels/product-header.panel.d.ts +4 -0
- package/dist/lib/form-panels/product-header.panel.d.ts.map +1 -1
- package/dist/lib/form-panels/product-header.panel.js +17 -4
- package/dist/lib/form-panels/product-header.panel.js.map +1 -1
- package/dist/lib/form-panels/product-widget.panels.d.ts.map +1 -1
- package/dist/lib/form-panels/product-widget.panels.js +8 -5
- package/dist/lib/form-panels/product-widget.panels.js.map +1 -1
- package/dist/lib/generated/Entities/mjBizAppsOrdersProduct/mjbizappsordersproduct.form.component.js +4 -4
- package/dist/lib/generated/Entities/mjBizAppsOrdersProduct/mjbizappsordersproduct.form.component.js.map +1 -1
- package/dist/lib/generated/Entities/mjBizAppsOrdersProductPrice/mjbizappsordersproductprice.form.component.d.ts.map +1 -1
- package/dist/lib/generated/Entities/mjBizAppsOrdersProductPrice/mjbizappsordersproductprice.form.component.js +39 -27
- package/dist/lib/generated/Entities/mjBizAppsOrdersProductPrice/mjbizappsordersproductprice.form.component.js.map +1 -1
- package/dist/lib/panels/catalog-list-price.d.ts +4 -0
- package/dist/lib/panels/catalog-list-price.d.ts.map +1 -0
- package/dist/lib/panels/catalog-list-price.js +23 -0
- package/dist/lib/panels/catalog-list-price.js.map +1 -0
- package/dist/lib/services/pricing-scheduler.service.d.ts.map +1 -1
- package/dist/lib/services/pricing-scheduler.service.js +6 -3
- package/dist/lib/services/pricing-scheduler.service.js.map +1 -1
- package/package.json +6 -4
|
@@ -28,6 +28,7 @@ export declare class BizAppsProductFormComponent extends mjBizAppsOrdersProductF
|
|
|
28
28
|
EventProductLoading: boolean;
|
|
29
29
|
ProductTypeRecord: mjBizAppsOrdersProductTypeEntity | null;
|
|
30
30
|
RevenueRecRecord: mjBizAppsOrdersRevenueRecognitionTypeEntity | null;
|
|
31
|
+
ListPriceLabel: string;
|
|
31
32
|
protected navigationService: NavigationService | null;
|
|
32
33
|
ngOnInit(): Promise<void>;
|
|
33
34
|
SelectPane(pane: ProductFormPane): void;
|
|
@@ -48,9 +49,6 @@ export declare class BizAppsProductFormComponent extends mjBizAppsOrdersProductF
|
|
|
48
49
|
* Resolves the venue and timing summary for Event products.
|
|
49
50
|
*/
|
|
50
51
|
get EventScheduleSummary(): string;
|
|
51
|
-
/**
|
|
52
|
-
* Formats the base price into currency.
|
|
53
|
-
*/
|
|
54
52
|
get FormattedBasePrice(): string;
|
|
55
53
|
/**
|
|
56
54
|
* FontAwesome icon reflecting the specific product category or type.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-form.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/Product/product-form.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAG5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EACH,4BAA4B,EAC5B,iCAAiC,EACjC,gCAAgC,EAChC,2CAA2C,EAC9C,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,mCAAmC,EAAE,MAAM,uFAAuF,CAAC;;AAG5I,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,GAAG,aAAa,GAAG,eAAe,GAAG,SAAS,GAAG,gBAAgB,CAAC;AAIhJ;;;;;;;;;;;;;;;GAeG;AACH,qBAMa,2BAA4B,SAAQ,mCAAmC;IACjE,MAAM,EAAE,4BAA4B,CAAC;IAE7C,UAAU,EAAE,eAAe,CAAc;IAEhD,0FAA0F;IACnF,iBAAiB,EAAE,iCAAiC,GAAG,IAAI,CAAQ;IACnE,mBAAmB,UAAS;IAC5B,iBAAiB,EAAE,gCAAgC,GAAG,IAAI,CAAQ;IAClE,gBAAgB,EAAE,2CAA2C,GAAG,IAAI,CAAQ;
|
|
1
|
+
{"version":3,"file":"product-form.component.d.ts","sourceRoot":"","sources":["../../../../src/lib/custom/Product/product-form.component.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAG5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,EACH,4BAA4B,EAC5B,iCAAiC,EACjC,gCAAgC,EAChC,2CAA2C,EAC9C,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,mCAAmC,EAAE,MAAM,uFAAuF,CAAC;;AAG5I,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,GAAG,aAAa,GAAG,eAAe,GAAG,SAAS,GAAG,gBAAgB,CAAC;AAIhJ;;;;;;;;;;;;;;;GAeG;AACH,qBAMa,2BAA4B,SAAQ,mCAAmC;IACjE,MAAM,EAAE,4BAA4B,CAAC;IAE7C,UAAU,EAAE,eAAe,CAAc;IAEhD,0FAA0F;IACnF,iBAAiB,EAAE,iCAAiC,GAAG,IAAI,CAAQ;IACnE,mBAAmB,UAAS;IAC5B,iBAAiB,EAAE,gCAAgC,GAAG,IAAI,CAAQ;IAClE,gBAAgB,EAAE,2CAA2C,GAAG,IAAI,CAAQ;IAC5E,cAAc,SAAc;IAEnC,SAAS,CAAC,iBAAiB,2BAAiD;IAE7D,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBjC,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI;IAK9C,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,IAAW,iBAAiB,IAAI,OAAO,CAMtC;IAED;;OAEG;IACH,IAAW,eAAe,IAAI,MAAM,CAQnC;IAED;;OAEG;IACH,IAAW,sBAAsB,IAAI,MAAM,CAQ1C;IAED;;OAEG;IACH,IAAW,oBAAoB,IAAI,MAAM,CAOxC;IAED,IAAW,kBAAkB,IAAI,MAAM,CAEtC;IAED;;OAEG;IACH,IAAW,iBAAiB,IAAI,MAAM,CAerC;IAED;;OAEG;IACH,IAAW,gBAAgB,IAAI,MAAM,CAapC;IAED;;OAEG;YACW,oBAAoB;IA0DlC;;;OAGG;IACM,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,IAAI;IAKzD;;OAEG;IACU,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;yCAjNxC,2BAA2B;2CAA3B,2BAA2B;CAwNvC;AAED,8CAA8C;AAC9C,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C"}
|
|
@@ -4,7 +4,7 @@ import { UserInfoEngine } from '@memberjunction/core-entities';
|
|
|
4
4
|
import { NavigationService } from '@memberjunction/ng-shared';
|
|
5
5
|
import { DispatchFormNavigation } from '../form-navigation-helper.js';
|
|
6
6
|
import { mjBizAppsOrdersProductFormComponent } from '../../generated/Entities/mjBizAppsOrdersProduct/mjbizappsordersproduct.form.component.js';
|
|
7
|
-
import {
|
|
7
|
+
import { LoadProductListPriceLabel } from '../../panels/catalog-list-price.js';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
import * as i1 from "@memberjunction/ng-base-forms";
|
|
10
10
|
import * as i2 from "./widgets/product-pricing-widget.component.js";
|
|
@@ -263,7 +263,7 @@ function BizAppsProductFormComponent_Conditional_0_Template(rf, ctx) { if (rf &
|
|
|
263
263
|
i0.ɵɵtext(21);
|
|
264
264
|
i0.ɵɵelementEnd()()()()();
|
|
265
265
|
i0.ɵɵelementStart(22, "div", 15)(23, "div", 16)(24, "span", 17);
|
|
266
|
-
i0.ɵɵtext(25, "
|
|
266
|
+
i0.ɵɵtext(25, "List price");
|
|
267
267
|
i0.ɵɵelementEnd();
|
|
268
268
|
i0.ɵɵelementStart(26, "span", 18);
|
|
269
269
|
i0.ɵɵtext(27);
|
|
@@ -451,6 +451,7 @@ export class BizAppsProductFormComponent extends mjBizAppsOrdersProductFormCompo
|
|
|
451
451
|
EventProductLoading = false;
|
|
452
452
|
ProductTypeRecord = null;
|
|
453
453
|
RevenueRecRecord = null;
|
|
454
|
+
ListPriceLabel = 'No price';
|
|
454
455
|
navigationService = inject(NavigationService, { optional: true });
|
|
455
456
|
async ngOnInit() {
|
|
456
457
|
await super.ngOnInit();
|
|
@@ -468,6 +469,7 @@ export class BizAppsProductFormComponent extends mjBizAppsOrdersProductFormCompo
|
|
|
468
469
|
this.ActivePane = savedPane;
|
|
469
470
|
}
|
|
470
471
|
await this.syncSubtypeExtension();
|
|
472
|
+
this.ListPriceLabel = await LoadProductListPriceLabel(this.record?.ID);
|
|
471
473
|
}
|
|
472
474
|
SelectPane(pane) {
|
|
473
475
|
this.ActivePane = pane;
|
|
@@ -522,11 +524,8 @@ export class BizAppsProductFormComponent extends mjBizAppsOrdersProductFormCompo
|
|
|
522
524
|
: 'Date TBD';
|
|
523
525
|
return `${venue} · ${start}`;
|
|
524
526
|
}
|
|
525
|
-
/**
|
|
526
|
-
* Formats the base price into currency.
|
|
527
|
-
*/
|
|
528
527
|
get FormattedBasePrice() {
|
|
529
|
-
return
|
|
528
|
+
return this.ListPriceLabel;
|
|
530
529
|
}
|
|
531
530
|
/**
|
|
532
531
|
* FontAwesome icon reflecting the specific product category or type.
|
|
@@ -655,7 +654,7 @@ export class BizAppsProductFormComponent extends mjBizAppsOrdersProductFormCompo
|
|
|
655
654
|
}
|
|
656
655
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BizAppsProductFormComponent, [{
|
|
657
656
|
type: Component,
|
|
658
|
-
args: [{ standalone: false, selector: 'bizapps-product-form', template: "@if (record) {\n<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 <mj-form-panel-slot Entity=\"{{record.EntityInfo.Name}}\" Slot=\"before-fields\" [Record]=\"record\" [FormComponent]=\"this\" [FormContext]=\"formContext\"></mj-form-panel-slot>\n\n <!-- ================================================================\n HERO IDENTITY HEADER CARD & SUMMARY METRIC STRIP\n ================================================================ -->\n <div class=\"mjo-record-header-card\">\n <div class=\"mjo-record-header-top\">\n <div class=\"mjo-record-identity\">\n <div class=\"mjo-record-avatar\">\n <i [class]=\"ProductAvatarIcon\"></i>\n </div>\n <div class=\"mjo-record-title-area\">\n <h1 class=\"mjo-record-title\">\n {{ record.Name || 'New Product Catalog Entry' }}\n </h1>\n <div class=\"mjo-record-badges\">\n <span class=\"mjo-entity-chip\"><i class=\"fa-solid fa-database\"></i> MJ_BizApps_Orders: Products</span>\n <span class=\"mjo-sku-badge\">{{ record.SKU || 'SKU TBD' }}</span>\n <span class=\"mjo-type-chip\">\n <i class=\"fa-solid fa-tag\"></i> {{ ProductTypeName }}\n </span>\n @if (HasEventExtension) {\n <span class=\"mjo-type-chip\">\n <i class=\"fa-solid fa-calendar-check\"></i> Specialized Profile: Event & Conference\n </span>\n }\n <span [class]=\"StatusBadgeClass\">{{ record.Status || 'Draft' }}</span>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Quick Summary Metric Strip -->\n <div class=\"mjo-record-summary-bar\">\n <div class=\"mjo-stat-block\">\n <span class=\"mjo-stat-label\">Base List Price</span>\n <span class=\"mjo-stat-val\">{{ FormattedBasePrice }}</span>\n </div>\n <div class=\"mjo-stat-block\">\n <span class=\"mjo-stat-label\">Product Type</span>\n <span class=\"mjo-stat-val\">{{ ProductTypeName }}</span>\n </div>\n <div class=\"mjo-stat-block\">\n <span class=\"mjo-stat-label\">Revenue Recognition</span>\n <span class=\"mjo-stat-val\">{{ RevenueRecognitionName }}</span>\n </div>\n <div class=\"mjo-stat-block\">\n <span class=\"mjo-stat-label\">{{ HasEventExtension ? 'Event Schedule' : 'Tax Status' }}</span>\n <span class=\"mjo-stat-val\">{{ HasEventExtension ? EventScheduleSummary : (record.IsTaxable ? 'Taxable' : 'Tax Exempt') }}</span>\n </div>\n <div class=\"mjo-stat-block\">\n <span class=\"mjo-stat-label\">Price List Assignments</span>\n <span class=\"mjo-stat-val\">{{ GetSectionRowCount('productPrices') || 0 }} Rules</span>\n </div>\n </div>\n </div>\n\n <!-- ================================================================\n TWO-COLUMN RESPONSIVE WORKSPACE: LEFT NAV + ACTIVE PANE\n ================================================================ -->\n <div class=\"mjo-workspace-layout\">\n\n <!-- RESPONSIVE LEFT NAVIGATION RAIL -->\n <aside class=\"mjo-product-left-nav\" role=\"navigation\" aria-label=\"Product sections\">\n <div class=\"mjo-nav-group-title\">Catalog Profile</div>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'overview'\" (click)=\"SelectPane('overview')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-circle-info\"></i>\n <span>Overview & Profile</span>\n </span>\n </button>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'pricing'\" (click)=\"SelectPane('pricing')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-calculator\"></i>\n <span>Pricing & Tiers</span>\n </span>\n <span class=\"mjo-nav-badge\">{{ GetSectionRowCount('productPrices') || 0 }}</span>\n </button>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'promos'\" (click)=\"SelectPane('promos')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-ticket\"></i>\n <span>Promotions & Discounts</span>\n </span>\n </button>\n\n <div class=\"mjo-nav-group-title\">Finance & Operations</div>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'accounting'\" (click)=\"SelectPane('accounting')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-scale-balanced\"></i>\n <span>Tax & Accounting GL</span>\n </span>\n </button>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'fulfillment'\" (click)=\"SelectPane('fulfillment')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-truck-fast\"></i>\n <span>Delivery & Fulfillment</span>\n </span>\n </button>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'subscriptions'\" (click)=\"SelectPane('subscriptions')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-arrows-rotate\"></i>\n <span>Subscription</span>\n </span>\n </button>\n\n @if (record.ProductType === 'Bundle' || record.ProductType === 'Kit') {\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'bundles'\" (click)=\"SelectPane('bundles')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-boxes-stacked\"></i>\n <span>Bundle Kit Items</span>\n </span>\n <span class=\"mjo-nav-badge\">{{ GetSectionRowCount('productBundleItems') || 0 }}</span>\n </button>\n }\n\n @if (!EditMode) {\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'systemMetadata'\" (click)=\"SelectPane('systemMetadata')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-database\"></i>\n <span>System Metadata</span>\n </span>\n </button>\n }\n </aside>\n\n <!-- ACTIVE CONTENT WORKSPACE -->\n <section class=\"mjo-workspace-content\">\n\n <!-- ============================================================\n PANE 1: OVERVIEW & SPECIALIZED PROFILE\n ============================================================ -->\n @if (ActivePane === 'overview') {\n <div class=\"mjo-pane-wrap\">\n @if (HasEventExtension) {\n <div class=\"mjo-profile-banner\">\n <i class=\"fa-solid fa-calendar-check\" style=\"font-size: 20px; color: #0284c7;\"></i>\n <div>\n <strong>Specialized Event Profile Active:</strong> Venue, scheduling, and attendee requirements are linked directly to this product record.\n </div>\n </div>\n }\n\n <div class=\"mjo-widget-card\">\n <div class=\"mjo-widget-head\">\n <i class=\"fa-solid fa-cube\"></i>\n <span>Core Product Specifications</span>\n </div>\n <div class=\"mjo-fields-grid\">\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"Name\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"SKU\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"MaxQuantityPerLine\"\n Type=\"numerictextbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"ProductCategoryID\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n LinkType=\"Record\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"ProductTypeID\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n LinkType=\"Record\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"Status\"\n Type=\"select\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"CompanyID\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n LinkType=\"Record\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n </div>\n <div style=\"margin-top: 12px;\">\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"Description\"\n Type=\"textarea\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n </div>\n </div>\n\n <!-- Specialized Profile Form Fields (EventProduct) -->\n @if (HasEventExtension && EventProductChild) {\n <div class=\"mjo-widget-card\" style=\"margin-top: 16px;\">\n <div class=\"mjo-widget-head\">\n <i class=\"fa-solid fa-map-location-dot\"></i>\n <span>Event & Venue Schedule Details</span>\n </div>\n <div class=\"mjo-fields-grid\">\n <mj-form-field \n [Record]=\"EventProductChild\"\n [ShowLabel]=\"true\"\n FieldName=\"EventStartsAt\"\n Type=\"datepicker\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"EventProductChild\"\n [ShowLabel]=\"true\"\n FieldName=\"EventEndsAt\"\n Type=\"datepicker\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"EventProductChild\"\n [ShowLabel]=\"true\"\n FieldName=\"VenueName\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"EventProductChild\"\n [ShowLabel]=\"true\"\n FieldName=\"Capacity\"\n Type=\"number\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"EventProductChild\"\n [ShowLabel]=\"true\"\n FieldName=\"RequiresAttendeeInfo\"\n Type=\"checkbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n </div>\n </div>\n }\n </div>\n }\n\n <!-- ============================================================\n PANE 2: PRICING & VOLUME TIERS (DROPPABLE WIDGET)\n ============================================================ -->\n @if (ActivePane === 'pricing') {\n <bizapps-product-pricing-widget\n [Product]=\"record\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </bizapps-product-pricing-widget>\n }\n\n <!-- ============================================================\n PANE 3: PROMOTIONS & CAMPAIGNS (DROPPABLE WIDGET)\n ============================================================ -->\n @if (ActivePane === 'promos') {\n <bizapps-product-promotions-widget\n [Product]=\"record\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </bizapps-product-promotions-widget>\n }\n\n <!-- ============================================================\n PANE 4: TAX & ACCOUNTING GL (DROPPABLE WIDGET)\n ============================================================ -->\n @if (ActivePane === 'accounting') {\n <bizapps-product-accounting-widget\n [Product]=\"record\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </bizapps-product-accounting-widget>\n }\n\n <!-- ============================================================\n PANE 5: DELIVERY & FULFILLMENT (DROPPABLE WIDGET)\n ============================================================ -->\n @if (ActivePane === 'fulfillment') {\n <bizapps-product-fulfillment-widget\n [Product]=\"record\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </bizapps-product-fulfillment-widget>\n }\n\n <!-- ============================================================\n PANE 6: SUBSCRIPTIONS & GRANTS (DROPPABLE WIDGET)\n ============================================================ -->\n @if (ActivePane === 'subscriptions') {\n <bizapps-product-subscription-widget\n [Product]=\"record\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </bizapps-product-subscription-widget>\n }\n\n <!-- ============================================================\n PANE 7: BUNDLE KIT ITEMS\n ============================================================ -->\n @if (ActivePane === 'bundles' && record.IsSaved) {\n <div class=\"mjo-widget-card\">\n <div class=\"mjo-widget-head\">\n <i class=\"fa-solid fa-boxes-stacked\"></i>\n <span>Bundle Components & Kit Items</span>\n </div>\n <mj-explorer-entity-data-grid\n [Params]=\"BuildRelationshipViewParamsByEntityName('MJ_BizApps_Orders: Product Bundle Items','BundleProductID')\"\n [NewRecordValues]=\"NewRecordValues('MJ_BizApps_Orders: Product Bundle Items')\"\n [AllowLoad]=\"true\"\n [ShowToolbar]=\"true\"\n [ShowNewButton]=\"true\"\n (Navigate)=\"OnFormNavigate($event)\"\n (AfterDataLoad)=\"SetSectionRowCount('productBundleItems', $event.totalRowCount)\">\n </mj-explorer-entity-data-grid>\n </div>\n }\n\n <!-- ============================================================\n PANE 8: SYSTEM METADATA\n ============================================================ -->\n @if (ActivePane === 'systemMetadata' && !EditMode) {\n <div class=\"mjo-widget-card\">\n <div class=\"mjo-widget-head\">\n <i class=\"fa-solid fa-database\"></i>\n <span>System Identifiers & Timestamps</span>\n </div>\n <div class=\"mjo-fields-grid\">\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"ID\" Type=\"textbox\" [EditMode]=\"false\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"__mj_CreatedAt\" Type=\"textbox\" [EditMode]=\"false\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"__mj_UpdatedAt\" Type=\"textbox\" [EditMode]=\"false\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n </div>\n </div>\n }\n\n </section>\n </div>\n\n <mj-form-panel-slot Entity=\"{{record.EntityInfo.Name}}\" Slot=\"after-related\" [Record]=\"record\" [FormComponent]=\"this\" [FormContext]=\"formContext\"></mj-form-panel-slot>\n\n</mj-record-form-container>\n}\n", styles: ["/* ============================================================================\n BizApps Orders \u2014 Custom Product Form Component (Responsive Left-Nav Layout)\n ============================================================================ */\n\n/* \u2500\u2500 1. Hero Identity Header Card \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.mjo-record-header-card {\n background: var(--mj-bg-surface-card, #ffffff);\n border: 1px solid var(--mj-border-default, #e2e8f0);\n border-radius: var(--mj-radius-lg, 12px);\n padding: var(--mj-space-4, 16px) var(--mj-space-5, 20px);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);\n margin-bottom: var(--mj-space-4, 16px);\n}\n\n.mjo-record-header-top {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n gap: var(--mj-space-4, 16px);\n flex-wrap: wrap;\n}\n\n.mjo-record-identity {\n display: flex;\n align-items: center;\n gap: var(--mj-space-4, 16px);\n}\n\n.mjo-record-avatar {\n width: 52px;\n height: 52px;\n border-radius: var(--mj-radius-md, 8px);\n background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);\n color: #ffffff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 22px;\n box-shadow: 0 4px 10px rgba(2, 132, 199, 0.25);\n flex-shrink: 0;\n}\n\n.mjo-record-title-area {\n display: flex;\n flex-direction: column;\n gap: var(--mj-space-2, 6px);\n}\n\n.mjo-record-title {\n margin: 0;\n font-size: var(--mj-text-lg, 18px);\n font-weight: var(--mj-font-bold, 700);\n color: var(--mj-text-primary, #0f172a);\n letter-spacing: -0.01em;\n line-height: 1.25;\n}\n\n.mjo-record-badges {\n display: flex;\n align-items: center;\n gap: var(--mj-space-2, 8px);\n flex-wrap: wrap;\n}\n\n.mjo-entity-chip {\n font-size: var(--mj-text-xs, 11.5px);\n font-weight: var(--mj-font-semibold, 600);\n color: var(--mj-brand-primary, #0076b6);\n background: var(--mj-status-info-bg, rgba(0, 118, 182, 0.12));\n padding: 2px 8px;\n border-radius: var(--mj-radius-sm, 4px);\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n.mjo-sku-badge {\n font-family: var(--mj-font-family-mono, monospace);\n font-size: var(--mj-text-xs, 11.5px);\n font-weight: 500;\n color: var(--mj-text-secondary, #475569);\n background: var(--mj-bg-surface-sunken, rgba(0, 0, 0, 0.04));\n border: 1px solid var(--mj-border-default, #cbd5e1);\n padding: 1px 7px;\n border-radius: var(--mj-radius-sm, 4px);\n}\n\n.mjo-type-chip {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n font-size: var(--mj-text-xs, 11.5px);\n font-weight: var(--mj-font-semibold, 600);\n color: #0284c7;\n background: rgba(2, 132, 199, 0.12);\n border: 1px solid rgba(2, 132, 199, 0.35);\n padding: 2px 8px;\n border-radius: var(--mj-radius-full, 9999px);\n}\n\n.mjo-status-chip {\n font-size: var(--mj-text-xs, 11.5px);\n font-weight: var(--mj-font-bold, 700);\n padding: 2px 10px;\n border-radius: var(--mj-radius-full, 9999px);\n text-transform: uppercase;\n letter-spacing: 0.03em;\n}\n\n.mjo-status-chip--active {\n background: var(--mj-color-success-100, #dcfce7);\n color: var(--mj-color-success-700, #15803d);\n border: 1px solid var(--mj-color-success-300, #86efac);\n}\n\n.mjo-status-chip--draft {\n background: var(--mj-color-warning-100, #fef3c7);\n color: var(--mj-color-warning-700, #b45309);\n border: 1px solid var(--mj-color-warning-300, #fcd34d);\n}\n\n.mjo-status-chip--inactive {\n background: var(--mj-bg-surface-sunken, #f1f5f9);\n color: var(--mj-text-muted, #64748b);\n border: 1px solid var(--mj-border-default, #cbd5e1);\n}\n\n/* Summary metric strip */\n.mjo-record-summary-bar {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));\n gap: var(--mj-space-3, 12px);\n margin-top: var(--mj-space-3, 14px);\n padding-top: var(--mj-space-3, 14px);\n border-top: 1px solid var(--mj-border-default, #f1f5f9);\n}\n\n.mjo-stat-block {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.mjo-stat-label {\n font-size: var(--mj-text-xs, 10.5px);\n font-weight: var(--mj-font-semibold, 600);\n color: var(--mj-text-muted, #64748b);\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n\n.mjo-stat-val {\n font-size: var(--mj-text-sm, 13.5px);\n font-weight: var(--mj-font-bold, 700);\n font-family: var(--mj-font-family-mono, monospace);\n color: var(--mj-text-primary, #0f172a);\n}\n\n/* \u2500\u2500 2. Two-Column Workspace Layout \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.mjo-workspace-layout {\n display: grid;\n grid-template-columns: 240px 1fr;\n gap: var(--mj-space-4, 16px);\n align-items: start;\n}\n\n/* Left Nav Rail */\n.mjo-product-left-nav {\n background: var(--mj-bg-surface-card, #ffffff);\n border: 1px solid var(--mj-border-default, #e2e8f0);\n border-radius: var(--mj-radius-lg, 10px);\n padding: 8px;\n display: flex;\n flex-direction: column;\n gap: 3px;\n position: sticky;\n top: 16px;\n}\n\n.mjo-nav-group-title {\n font-size: 10px;\n font-weight: var(--mj-font-bold, 700);\n color: var(--mj-text-muted, #64748b);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n padding: 6px 10px 2px;\n}\n\n.mjo-nav-btn {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 8px 12px;\n background: transparent;\n border: none;\n border-radius: var(--mj-radius-md, 6px);\n font-family: inherit;\n font-size: var(--mj-text-xs, 12.5px);\n font-weight: var(--mj-font-semibold, 600);\n color: var(--mj-text-secondary, #475569);\n cursor: pointer;\n text-align: left;\n transition: all 0.15s ease;\n box-sizing: border-box;\n}\n\n.mjo-nav-btn:hover {\n background: var(--mj-bg-surface-sunken, #f1f5f9);\n color: var(--mj-text-primary, #0f172a);\n}\n\n.mjo-nav-btn.active {\n background: var(--mj-brand-primary, #0076b6);\n color: #ffffff;\n box-shadow: 0 2px 4px rgba(0, 118, 182, 0.25);\n}\n\n.mjo-nav-btn-left {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.mjo-nav-btn-left i {\n width: 16px;\n text-align: center;\n font-size: 13px;\n}\n\n.mjo-nav-badge {\n font-size: 10px;\n font-weight: var(--mj-font-bold, 700);\n padding: 1px 6px;\n border-radius: var(--mj-radius-full, 9999px);\n background: rgba(0, 0, 0, 0.07);\n}\n\n.mjo-nav-btn.active .mjo-nav-badge {\n background: rgba(255, 255, 255, 0.25);\n color: #ffffff;\n}\n\n/* Responsive collapse on smaller screens */\n@media (max-width: 900px) {\n .mjo-workspace-layout {\n grid-template-columns: 1fr;\n }\n\n .mjo-product-left-nav {\n position: static;\n flex-direction: row;\n overflow-x: auto;\n padding: 6px;\n gap: 6px;\n }\n\n .mjo-nav-group-title { display: none; }\n .mjo-nav-btn { width: auto; white-space: nowrap; }\n}\n\n/* \u2500\u2500 3. Content Workspace Widgets & Panes \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.mjo-workspace-content {\n display: flex;\n flex-direction: column;\n gap: var(--mj-space-3, 12px);\n}\n\n.mjo-pane-wrap {\n display: flex;\n flex-direction: column;\n gap: var(--mj-space-3, 12px);\n}\n\n.mjo-profile-banner {\n background: #f0f9ff;\n border: 1px solid #bae6fd;\n border-radius: var(--mj-radius-md, 8px);\n padding: var(--mj-space-3, 12px) var(--mj-space-4, 16px);\n display: flex;\n align-items: center;\n gap: 12px;\n font-size: var(--mj-text-sm, 12.5px);\n color: #0369a1;\n}\n\n.mjo-widget-card {\n background: var(--mj-bg-surface-card, #ffffff);\n border: 1px solid var(--mj-border-default, #e2e8f0);\n border-radius: var(--mj-radius-lg, 10px);\n padding: var(--mj-space-4, 16px);\n}\n\n.mjo-widget-head {\n font-size: var(--mj-text-sm, 13px);\n font-weight: var(--mj-font-bold, 700);\n color: var(--mj-text-primary, #0f172a);\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: var(--mj-space-3, 12px);\n padding-bottom: var(--mj-space-2, 8px);\n border-bottom: 1px solid var(--mj-border-default, #f1f5f9);\n}\n\n.mjo-fields-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));\n gap: var(--mj-space-3, 12px);\n}\n"] }]
|
|
657
|
+
args: [{ standalone: false, selector: 'bizapps-product-form', template: "@if (record) {\n<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 <mj-form-panel-slot Entity=\"{{record.EntityInfo.Name}}\" Slot=\"before-fields\" [Record]=\"record\" [FormComponent]=\"this\" [FormContext]=\"formContext\"></mj-form-panel-slot>\n\n <!-- ================================================================\n HERO IDENTITY HEADER CARD & SUMMARY METRIC STRIP\n ================================================================ -->\n <div class=\"mjo-record-header-card\">\n <div class=\"mjo-record-header-top\">\n <div class=\"mjo-record-identity\">\n <div class=\"mjo-record-avatar\">\n <i [class]=\"ProductAvatarIcon\"></i>\n </div>\n <div class=\"mjo-record-title-area\">\n <h1 class=\"mjo-record-title\">\n {{ record.Name || 'New Product Catalog Entry' }}\n </h1>\n <div class=\"mjo-record-badges\">\n <span class=\"mjo-entity-chip\"><i class=\"fa-solid fa-database\"></i> MJ_BizApps_Orders: Products</span>\n <span class=\"mjo-sku-badge\">{{ record.SKU || 'SKU TBD' }}</span>\n <span class=\"mjo-type-chip\">\n <i class=\"fa-solid fa-tag\"></i> {{ ProductTypeName }}\n </span>\n @if (HasEventExtension) {\n <span class=\"mjo-type-chip\">\n <i class=\"fa-solid fa-calendar-check\"></i> Specialized Profile: Event & Conference\n </span>\n }\n <span [class]=\"StatusBadgeClass\">{{ record.Status || 'Draft' }}</span>\n </div>\n </div>\n </div>\n </div>\n\n <!-- Quick Summary Metric Strip -->\n <div class=\"mjo-record-summary-bar\">\n <div class=\"mjo-stat-block\">\n <span class=\"mjo-stat-label\">List price</span>\n <span class=\"mjo-stat-val\">{{ FormattedBasePrice }}</span>\n </div>\n <div class=\"mjo-stat-block\">\n <span class=\"mjo-stat-label\">Product Type</span>\n <span class=\"mjo-stat-val\">{{ ProductTypeName }}</span>\n </div>\n <div class=\"mjo-stat-block\">\n <span class=\"mjo-stat-label\">Revenue Recognition</span>\n <span class=\"mjo-stat-val\">{{ RevenueRecognitionName }}</span>\n </div>\n <div class=\"mjo-stat-block\">\n <span class=\"mjo-stat-label\">{{ HasEventExtension ? 'Event Schedule' : 'Tax Status' }}</span>\n <span class=\"mjo-stat-val\">{{ HasEventExtension ? EventScheduleSummary : (record.IsTaxable ? 'Taxable' : 'Tax Exempt') }}</span>\n </div>\n <div class=\"mjo-stat-block\">\n <span class=\"mjo-stat-label\">Price List Assignments</span>\n <span class=\"mjo-stat-val\">{{ GetSectionRowCount('productPrices') || 0 }} Rules</span>\n </div>\n </div>\n </div>\n\n <!-- ================================================================\n TWO-COLUMN RESPONSIVE WORKSPACE: LEFT NAV + ACTIVE PANE\n ================================================================ -->\n <div class=\"mjo-workspace-layout\">\n\n <!-- RESPONSIVE LEFT NAVIGATION RAIL -->\n <aside class=\"mjo-product-left-nav\" role=\"navigation\" aria-label=\"Product sections\">\n <div class=\"mjo-nav-group-title\">Catalog Profile</div>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'overview'\" (click)=\"SelectPane('overview')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-circle-info\"></i>\n <span>Overview & Profile</span>\n </span>\n </button>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'pricing'\" (click)=\"SelectPane('pricing')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-calculator\"></i>\n <span>Pricing & Tiers</span>\n </span>\n <span class=\"mjo-nav-badge\">{{ GetSectionRowCount('productPrices') || 0 }}</span>\n </button>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'promos'\" (click)=\"SelectPane('promos')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-ticket\"></i>\n <span>Promotions & Discounts</span>\n </span>\n </button>\n\n <div class=\"mjo-nav-group-title\">Finance & Operations</div>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'accounting'\" (click)=\"SelectPane('accounting')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-scale-balanced\"></i>\n <span>Tax & Accounting GL</span>\n </span>\n </button>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'fulfillment'\" (click)=\"SelectPane('fulfillment')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-truck-fast\"></i>\n <span>Delivery & Fulfillment</span>\n </span>\n </button>\n\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'subscriptions'\" (click)=\"SelectPane('subscriptions')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-arrows-rotate\"></i>\n <span>Subscription</span>\n </span>\n </button>\n\n @if (record.ProductType === 'Bundle' || record.ProductType === 'Kit') {\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'bundles'\" (click)=\"SelectPane('bundles')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-boxes-stacked\"></i>\n <span>Bundle Kit Items</span>\n </span>\n <span class=\"mjo-nav-badge\">{{ GetSectionRowCount('productBundleItems') || 0 }}</span>\n </button>\n }\n\n @if (!EditMode) {\n <button type=\"button\" class=\"mjo-nav-btn\" [class.active]=\"ActivePane === 'systemMetadata'\" (click)=\"SelectPane('systemMetadata')\">\n <span class=\"mjo-nav-btn-left\">\n <i class=\"fa-solid fa-database\"></i>\n <span>System Metadata</span>\n </span>\n </button>\n }\n </aside>\n\n <!-- ACTIVE CONTENT WORKSPACE -->\n <section class=\"mjo-workspace-content\">\n\n <!-- ============================================================\n PANE 1: OVERVIEW & SPECIALIZED PROFILE\n ============================================================ -->\n @if (ActivePane === 'overview') {\n <div class=\"mjo-pane-wrap\">\n @if (HasEventExtension) {\n <div class=\"mjo-profile-banner\">\n <i class=\"fa-solid fa-calendar-check\" style=\"font-size: 20px; color: #0284c7;\"></i>\n <div>\n <strong>Specialized Event Profile Active:</strong> Venue, scheduling, and attendee requirements are linked directly to this product record.\n </div>\n </div>\n }\n\n <div class=\"mjo-widget-card\">\n <div class=\"mjo-widget-head\">\n <i class=\"fa-solid fa-cube\"></i>\n <span>Core Product Specifications</span>\n </div>\n <div class=\"mjo-fields-grid\">\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"Name\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"SKU\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"MaxQuantityPerLine\"\n Type=\"numerictextbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"ProductCategoryID\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n LinkType=\"Record\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"ProductTypeID\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n LinkType=\"Record\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"Status\"\n Type=\"select\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"CompanyID\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n LinkType=\"Record\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n </div>\n <div style=\"margin-top: 12px;\">\n <mj-form-field \n [Record]=\"record\"\n [ShowLabel]=\"true\"\n FieldName=\"Description\"\n Type=\"textarea\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n </div>\n </div>\n\n <!-- Specialized Profile Form Fields (EventProduct) -->\n @if (HasEventExtension && EventProductChild) {\n <div class=\"mjo-widget-card\" style=\"margin-top: 16px;\">\n <div class=\"mjo-widget-head\">\n <i class=\"fa-solid fa-map-location-dot\"></i>\n <span>Event & Venue Schedule Details</span>\n </div>\n <div class=\"mjo-fields-grid\">\n <mj-form-field \n [Record]=\"EventProductChild\"\n [ShowLabel]=\"true\"\n FieldName=\"EventStartsAt\"\n Type=\"datepicker\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"EventProductChild\"\n [ShowLabel]=\"true\"\n FieldName=\"EventEndsAt\"\n Type=\"datepicker\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"EventProductChild\"\n [ShowLabel]=\"true\"\n FieldName=\"VenueName\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"EventProductChild\"\n [ShowLabel]=\"true\"\n FieldName=\"Capacity\"\n Type=\"number\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"EventProductChild\"\n [ShowLabel]=\"true\"\n FieldName=\"RequiresAttendeeInfo\"\n Type=\"checkbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\"\n ></mj-form-field>\n </div>\n </div>\n }\n </div>\n }\n\n <!-- ============================================================\n PANE 2: PRICING & VOLUME TIERS (DROPPABLE WIDGET)\n ============================================================ -->\n @if (ActivePane === 'pricing') {\n <bizapps-product-pricing-widget\n [Product]=\"record\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </bizapps-product-pricing-widget>\n }\n\n <!-- ============================================================\n PANE 3: PROMOTIONS & CAMPAIGNS (DROPPABLE WIDGET)\n ============================================================ -->\n @if (ActivePane === 'promos') {\n <bizapps-product-promotions-widget\n [Product]=\"record\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </bizapps-product-promotions-widget>\n }\n\n <!-- ============================================================\n PANE 4: TAX & ACCOUNTING GL (DROPPABLE WIDGET)\n ============================================================ -->\n @if (ActivePane === 'accounting') {\n <bizapps-product-accounting-widget\n [Product]=\"record\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </bizapps-product-accounting-widget>\n }\n\n <!-- ============================================================\n PANE 5: DELIVERY & FULFILLMENT (DROPPABLE WIDGET)\n ============================================================ -->\n @if (ActivePane === 'fulfillment') {\n <bizapps-product-fulfillment-widget\n [Product]=\"record\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </bizapps-product-fulfillment-widget>\n }\n\n <!-- ============================================================\n PANE 6: SUBSCRIPTIONS & GRANTS (DROPPABLE WIDGET)\n ============================================================ -->\n @if (ActivePane === 'subscriptions') {\n <bizapps-product-subscription-widget\n [Product]=\"record\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"formContext\"\n (Navigate)=\"OnFormNavigate($event)\">\n </bizapps-product-subscription-widget>\n }\n\n <!-- ============================================================\n PANE 7: BUNDLE KIT ITEMS\n ============================================================ -->\n @if (ActivePane === 'bundles' && record.IsSaved) {\n <div class=\"mjo-widget-card\">\n <div class=\"mjo-widget-head\">\n <i class=\"fa-solid fa-boxes-stacked\"></i>\n <span>Bundle Components & Kit Items</span>\n </div>\n <mj-explorer-entity-data-grid\n [Params]=\"BuildRelationshipViewParamsByEntityName('MJ_BizApps_Orders: Product Bundle Items','BundleProductID')\"\n [NewRecordValues]=\"NewRecordValues('MJ_BizApps_Orders: Product Bundle Items')\"\n [AllowLoad]=\"true\"\n [ShowToolbar]=\"true\"\n [ShowNewButton]=\"true\"\n (Navigate)=\"OnFormNavigate($event)\"\n (AfterDataLoad)=\"SetSectionRowCount('productBundleItems', $event.totalRowCount)\">\n </mj-explorer-entity-data-grid>\n </div>\n }\n\n <!-- ============================================================\n PANE 8: SYSTEM METADATA\n ============================================================ -->\n @if (ActivePane === 'systemMetadata' && !EditMode) {\n <div class=\"mjo-widget-card\">\n <div class=\"mjo-widget-head\">\n <i class=\"fa-solid fa-database\"></i>\n <span>System Identifiers & Timestamps</span>\n </div>\n <div class=\"mjo-fields-grid\">\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"ID\" Type=\"textbox\" [EditMode]=\"false\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"__mj_CreatedAt\" Type=\"textbox\" [EditMode]=\"false\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n <mj-form-field [Record]=\"record\" [ShowLabel]=\"true\" FieldName=\"__mj_UpdatedAt\" Type=\"textbox\" [EditMode]=\"false\" [FormContext]=\"formContext\" (Navigate)=\"OnFormNavigate($event)\"></mj-form-field>\n </div>\n </div>\n }\n\n </section>\n </div>\n\n <mj-form-panel-slot Entity=\"{{record.EntityInfo.Name}}\" Slot=\"after-related\" [Record]=\"record\" [FormComponent]=\"this\" [FormContext]=\"formContext\"></mj-form-panel-slot>\n\n</mj-record-form-container>\n}\n", styles: ["/* ============================================================================\n BizApps Orders \u2014 Custom Product Form Component (Responsive Left-Nav Layout)\n ============================================================================ */\n\n/* \u2500\u2500 1. Hero Identity Header Card \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.mjo-record-header-card {\n background: var(--mj-bg-surface-card, #ffffff);\n border: 1px solid var(--mj-border-default, #e2e8f0);\n border-radius: var(--mj-radius-lg, 12px);\n padding: var(--mj-space-4, 16px) var(--mj-space-5, 20px);\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);\n margin-bottom: var(--mj-space-4, 16px);\n}\n\n.mjo-record-header-top {\n display: flex;\n align-items: flex-start;\n justify-content: space-between;\n gap: var(--mj-space-4, 16px);\n flex-wrap: wrap;\n}\n\n.mjo-record-identity {\n display: flex;\n align-items: center;\n gap: var(--mj-space-4, 16px);\n}\n\n.mjo-record-avatar {\n width: 52px;\n height: 52px;\n border-radius: var(--mj-radius-md, 8px);\n background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);\n color: #ffffff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 22px;\n box-shadow: 0 4px 10px rgba(2, 132, 199, 0.25);\n flex-shrink: 0;\n}\n\n.mjo-record-title-area {\n display: flex;\n flex-direction: column;\n gap: var(--mj-space-2, 6px);\n}\n\n.mjo-record-title {\n margin: 0;\n font-size: var(--mj-text-lg, 18px);\n font-weight: var(--mj-font-bold, 700);\n color: var(--mj-text-primary, #0f172a);\n letter-spacing: -0.01em;\n line-height: 1.25;\n}\n\n.mjo-record-badges {\n display: flex;\n align-items: center;\n gap: var(--mj-space-2, 8px);\n flex-wrap: wrap;\n}\n\n.mjo-entity-chip {\n font-size: var(--mj-text-xs, 11.5px);\n font-weight: var(--mj-font-semibold, 600);\n color: var(--mj-brand-primary, #0076b6);\n background: var(--mj-status-info-bg, rgba(0, 118, 182, 0.12));\n padding: 2px 8px;\n border-radius: var(--mj-radius-sm, 4px);\n display: inline-flex;\n align-items: center;\n gap: 4px;\n}\n\n.mjo-sku-badge {\n font-family: var(--mj-font-family-mono, monospace);\n font-size: var(--mj-text-xs, 11.5px);\n font-weight: 500;\n color: var(--mj-text-secondary, #475569);\n background: var(--mj-bg-surface-sunken, rgba(0, 0, 0, 0.04));\n border: 1px solid var(--mj-border-default, #cbd5e1);\n padding: 1px 7px;\n border-radius: var(--mj-radius-sm, 4px);\n}\n\n.mjo-type-chip {\n display: inline-flex;\n align-items: center;\n gap: 5px;\n font-size: var(--mj-text-xs, 11.5px);\n font-weight: var(--mj-font-semibold, 600);\n color: #0284c7;\n background: rgba(2, 132, 199, 0.12);\n border: 1px solid rgba(2, 132, 199, 0.35);\n padding: 2px 8px;\n border-radius: var(--mj-radius-full, 9999px);\n}\n\n.mjo-status-chip {\n font-size: var(--mj-text-xs, 11.5px);\n font-weight: var(--mj-font-bold, 700);\n padding: 2px 10px;\n border-radius: var(--mj-radius-full, 9999px);\n text-transform: uppercase;\n letter-spacing: 0.03em;\n}\n\n.mjo-status-chip--active {\n background: var(--mj-color-success-100, #dcfce7);\n color: var(--mj-color-success-700, #15803d);\n border: 1px solid var(--mj-color-success-300, #86efac);\n}\n\n.mjo-status-chip--draft {\n background: var(--mj-color-warning-100, #fef3c7);\n color: var(--mj-color-warning-700, #b45309);\n border: 1px solid var(--mj-color-warning-300, #fcd34d);\n}\n\n.mjo-status-chip--inactive {\n background: var(--mj-bg-surface-sunken, #f1f5f9);\n color: var(--mj-text-muted, #64748b);\n border: 1px solid var(--mj-border-default, #cbd5e1);\n}\n\n/* Summary metric strip */\n.mjo-record-summary-bar {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));\n gap: var(--mj-space-3, 12px);\n margin-top: var(--mj-space-3, 14px);\n padding-top: var(--mj-space-3, 14px);\n border-top: 1px solid var(--mj-border-default, #f1f5f9);\n}\n\n.mjo-stat-block {\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n\n.mjo-stat-label {\n font-size: var(--mj-text-xs, 10.5px);\n font-weight: var(--mj-font-semibold, 600);\n color: var(--mj-text-muted, #64748b);\n text-transform: uppercase;\n letter-spacing: 0.04em;\n}\n\n.mjo-stat-val {\n font-size: var(--mj-text-sm, 13.5px);\n font-weight: var(--mj-font-bold, 700);\n font-family: var(--mj-font-family-mono, monospace);\n color: var(--mj-text-primary, #0f172a);\n}\n\n/* \u2500\u2500 2. Two-Column Workspace Layout \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.mjo-workspace-layout {\n display: grid;\n grid-template-columns: 240px 1fr;\n gap: var(--mj-space-4, 16px);\n align-items: start;\n}\n\n/* Left Nav Rail */\n.mjo-product-left-nav {\n background: var(--mj-bg-surface-card, #ffffff);\n border: 1px solid var(--mj-border-default, #e2e8f0);\n border-radius: var(--mj-radius-lg, 10px);\n padding: 8px;\n display: flex;\n flex-direction: column;\n gap: 3px;\n position: sticky;\n top: 16px;\n}\n\n.mjo-nav-group-title {\n font-size: 10px;\n font-weight: var(--mj-font-bold, 700);\n color: var(--mj-text-muted, #64748b);\n text-transform: uppercase;\n letter-spacing: 0.06em;\n padding: 6px 10px 2px;\n}\n\n.mjo-nav-btn {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 8px 12px;\n background: transparent;\n border: none;\n border-radius: var(--mj-radius-md, 6px);\n font-family: inherit;\n font-size: var(--mj-text-xs, 12.5px);\n font-weight: var(--mj-font-semibold, 600);\n color: var(--mj-text-secondary, #475569);\n cursor: pointer;\n text-align: left;\n transition: all 0.15s ease;\n box-sizing: border-box;\n}\n\n.mjo-nav-btn:hover {\n background: var(--mj-bg-surface-sunken, #f1f5f9);\n color: var(--mj-text-primary, #0f172a);\n}\n\n.mjo-nav-btn.active {\n background: var(--mj-brand-primary, #0076b6);\n color: #ffffff;\n box-shadow: 0 2px 4px rgba(0, 118, 182, 0.25);\n}\n\n.mjo-nav-btn-left {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.mjo-nav-btn-left i {\n width: 16px;\n text-align: center;\n font-size: 13px;\n}\n\n.mjo-nav-badge {\n font-size: 10px;\n font-weight: var(--mj-font-bold, 700);\n padding: 1px 6px;\n border-radius: var(--mj-radius-full, 9999px);\n background: rgba(0, 0, 0, 0.07);\n}\n\n.mjo-nav-btn.active .mjo-nav-badge {\n background: rgba(255, 255, 255, 0.25);\n color: #ffffff;\n}\n\n/* Responsive collapse on smaller screens */\n@media (max-width: 900px) {\n .mjo-workspace-layout {\n grid-template-columns: 1fr;\n }\n\n .mjo-product-left-nav {\n position: static;\n flex-direction: row;\n overflow-x: auto;\n padding: 6px;\n gap: 6px;\n }\n\n .mjo-nav-group-title { display: none; }\n .mjo-nav-btn { width: auto; white-space: nowrap; }\n}\n\n/* \u2500\u2500 3. Content Workspace Widgets & Panes \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n.mjo-workspace-content {\n display: flex;\n flex-direction: column;\n gap: var(--mj-space-3, 12px);\n}\n\n.mjo-pane-wrap {\n display: flex;\n flex-direction: column;\n gap: var(--mj-space-3, 12px);\n}\n\n.mjo-profile-banner {\n background: #f0f9ff;\n border: 1px solid #bae6fd;\n border-radius: var(--mj-radius-md, 8px);\n padding: var(--mj-space-3, 12px) var(--mj-space-4, 16px);\n display: flex;\n align-items: center;\n gap: 12px;\n font-size: var(--mj-text-sm, 12.5px);\n color: #0369a1;\n}\n\n.mjo-widget-card {\n background: var(--mj-bg-surface-card, #ffffff);\n border: 1px solid var(--mj-border-default, #e2e8f0);\n border-radius: var(--mj-radius-lg, 10px);\n padding: var(--mj-space-4, 16px);\n}\n\n.mjo-widget-head {\n font-size: var(--mj-text-sm, 13px);\n font-weight: var(--mj-font-bold, 700);\n color: var(--mj-text-primary, #0f172a);\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: var(--mj-space-3, 12px);\n padding-bottom: var(--mj-space-2, 8px);\n border-bottom: 1px solid var(--mj-border-default, #f1f5f9);\n}\n\n.mjo-fields-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));\n gap: var(--mj-space-3, 12px);\n}\n"] }]
|
|
659
658
|
}], null, null); })();
|
|
660
659
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(BizAppsProductFormComponent, { className: "BizAppsProductFormComponent", filePath: "lib/custom/Product/product-form.component.ts", lineNumber: 42 }); })();
|
|
661
660
|
/** Tree-shaking prevention anchor function */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-form.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/Product/product-form.component.ts","../../../../src/lib/custom/Product/product-form.component.html"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"product-form.component.js","sourceRoot":"","sources":["../../../../src/lib/custom/Product/product-form.component.ts","../../../../src/lib/custom/Product/product-form.component.html"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ export class BizAppsProductAccountingWidgetComponent {
|
|
|
11
11
|
FormContext;
|
|
12
12
|
Navigate = new EventEmitter();
|
|
13
13
|
static ɵfac = function BizAppsProductAccountingWidgetComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || BizAppsProductAccountingWidgetComponent)(); };
|
|
14
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BizAppsProductAccountingWidgetComponent, selectors: [["bizapps-product-accounting-widget"]], inputs: { Product: "Product", EditMode: "EditMode", FormContext: "FormContext" }, outputs: { Navigate: "Navigate" }, standalone: false, decls:
|
|
14
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BizAppsProductAccountingWidgetComponent, selectors: [["bizapps-product-accounting-widget"]], inputs: { Product: "Product", EditMode: "EditMode", FormContext: "FormContext" }, outputs: { Navigate: "Navigate" }, standalone: false, decls: 13, vars: 15, consts: [[1, "mjo-acct-widget-wrap"], [1, "mjo-acct-card"], [1, "mjo-card-head"], [1, "fa-solid", "fa-scale-balanced"], [1, "mjo-card-body"], ["FieldName", "RevenueRecognitionTypeID", "Type", "textbox", "LinkType", "Record", 3, "Navigate", "Record", "ShowLabel", "EditMode", "FormContext"], ["FieldName", "IsTaxable", "Type", "checkbox", 3, "Navigate", "Record", "ShowLabel", "EditMode", "FormContext"], ["FieldName", "TaxCategory", "Type", "textbox", 3, "Navigate", "Record", "ShowLabel", "EditMode", "FormContext"], [3, "Navigate", "Product", "EditMode", "FormContext"]], template: function BizAppsProductAccountingWidgetComponent_Template(rf, ctx) { if (rf & 1) {
|
|
15
15
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2);
|
|
16
16
|
i0.ɵɵelement(3, "i", 3);
|
|
17
17
|
i0.ɵɵelementStart(4, "span");
|
|
@@ -25,12 +25,9 @@ export class BizAppsProductAccountingWidgetComponent {
|
|
|
25
25
|
i0.ɵɵelementEnd();
|
|
26
26
|
i0.ɵɵelementStart(9, "mj-form-field", 7);
|
|
27
27
|
i0.ɵɵlistener("Navigate", function BizAppsProductAccountingWidgetComponent_Template_mj_form_field_Navigate_9_listener($event) { return ctx.Navigate.emit($event); });
|
|
28
|
-
i0.ɵɵelementEnd();
|
|
29
|
-
i0.ɵɵelementStart(10, "mj-form-field", 8);
|
|
30
|
-
i0.ɵɵlistener("Navigate", function BizAppsProductAccountingWidgetComponent_Template_mj_form_field_Navigate_10_listener($event) { return ctx.Navigate.emit($event); });
|
|
31
28
|
i0.ɵɵelementEnd()()();
|
|
32
|
-
i0.ɵɵelementStart(
|
|
33
|
-
i0.ɵɵlistener("Navigate", function
|
|
29
|
+
i0.ɵɵelementStart(10, "div", 1)(11, "div", 4)(12, "bizapps-product-gl-links", 8);
|
|
30
|
+
i0.ɵɵlistener("Navigate", function BizAppsProductAccountingWidgetComponent_Template_bizapps_product_gl_links_Navigate_12_listener($event) { return ctx.Navigate.emit($event); });
|
|
34
31
|
i0.ɵɵelementEnd()()()();
|
|
35
32
|
} if (rf & 2) {
|
|
36
33
|
i0.ɵɵadvance(7);
|
|
@@ -39,15 +36,13 @@ export class BizAppsProductAccountingWidgetComponent {
|
|
|
39
36
|
i0.ɵɵproperty("Record", ctx.Product)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.FormContext);
|
|
40
37
|
i0.ɵɵadvance();
|
|
41
38
|
i0.ɵɵproperty("Record", ctx.Product)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.FormContext);
|
|
42
|
-
i0.ɵɵadvance();
|
|
43
|
-
i0.ɵɵproperty("Record", ctx.Product)("ShowLabel", true)("EditMode", ctx.EditMode)("FormContext", ctx.FormContext);
|
|
44
39
|
i0.ɵɵadvance(3);
|
|
45
40
|
i0.ɵɵproperty("Product", ctx.Product)("EditMode", ctx.EditMode)("FormContext", ctx.FormContext);
|
|
46
41
|
} }, dependencies: [i1.MjFormFieldComponent, i2.BizAppsProductGLLinksComponent], styles: [".mjo-acct-widget-wrap[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n gap: var(--mj-space-4, 16px);\n width: 100%;\n}\n\n.mjo-acct-card[_ngcontent-%COMP%] {\n background: var(--mj-bg-surface-card, rgba(255, 255, 255, 0.05));\n border: 1px solid var(--mj-border-default, rgba(255, 255, 255, 0.12));\n border-radius: var(--mj-radius-lg, 10px);\n overflow: hidden;\n}\n\n.mjo-card-head[_ngcontent-%COMP%] {\n padding: 12px 16px;\n background: var(--mj-bg-surface-sunken, rgba(0, 0, 0, 0.1));\n border-bottom: 1px solid var(--mj-border-default, rgba(255, 255, 255, 0.1));\n font-size: 13.5px;\n font-weight: 700;\n color: var(--mj-text-primary, #0f172a);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.mjo-card-head[_ngcontent-%COMP%] i[_ngcontent-%COMP%] {\n color: var(--mj-brand-primary, #0284c7);\n}\n\n.mjo-card-body[_ngcontent-%COMP%] {\n padding: 16px;\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));\n gap: 16px;\n}"] });
|
|
47
42
|
}
|
|
48
43
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BizAppsProductAccountingWidgetComponent, [{
|
|
49
44
|
type: Component,
|
|
50
|
-
args: [{ standalone: false, selector: 'bizapps-product-accounting-widget', template: "<div class=\"mjo-acct-widget-wrap\">\n <div class=\"mjo-acct-card\">\n <div class=\"mjo-card-head\">\n <i class=\"fa-solid fa-scale-balanced\"></i>\n <span>General Ledger & Revenue Recognition Classification</span>\n </div>\n <div class=\"mjo-card-body\">\n <mj-form-field \n [Record]=\"Product\"\n [ShowLabel]=\"true\"\n FieldName=\"RevenueRecognitionTypeID\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"FormContext\"\n LinkType=\"Record\"\n (Navigate)=\"Navigate.emit($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"Product\"\n [ShowLabel]=\"true\"\n FieldName=\"IsTaxable\"\n Type=\"checkbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"FormContext\"\n (Navigate)=\"Navigate.emit($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"Product\"\n [ShowLabel]=\"true\"\n FieldName=\"TaxCategory\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"FormContext\"\n (Navigate)=\"Navigate.emit($event)\"\n ></mj-form-field>\n
|
|
45
|
+
args: [{ standalone: false, selector: 'bizapps-product-accounting-widget', template: "<div class=\"mjo-acct-widget-wrap\">\n <div class=\"mjo-acct-card\">\n <div class=\"mjo-card-head\">\n <i class=\"fa-solid fa-scale-balanced\"></i>\n <span>General Ledger & Revenue Recognition Classification</span>\n </div>\n <div class=\"mjo-card-body\">\n <mj-form-field \n [Record]=\"Product\"\n [ShowLabel]=\"true\"\n FieldName=\"RevenueRecognitionTypeID\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"FormContext\"\n LinkType=\"Record\"\n (Navigate)=\"Navigate.emit($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"Product\"\n [ShowLabel]=\"true\"\n FieldName=\"IsTaxable\"\n Type=\"checkbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"FormContext\"\n (Navigate)=\"Navigate.emit($event)\"\n ></mj-form-field>\n <mj-form-field \n [Record]=\"Product\"\n [ShowLabel]=\"true\"\n FieldName=\"TaxCategory\"\n Type=\"textbox\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"FormContext\"\n (Navigate)=\"Navigate.emit($event)\"\n ></mj-form-field>\n </div>\n </div>\n\n <!--\n bizapps-orders#113 \u2014 the GL accounts this product books to.\n\n Andrew expected these HERE, under Accounting, and the section showed only the\n product's own columns. The links live in accounting, but they are polymorphic\n ((EntityID, RecordID)) and accounting must not depend on orders, so its own screen\n cannot even name a product. Rendering them from this side is what makes the pair\n something nobody has to type.\n -->\n <div class=\"mjo-acct-card\">\n <div class=\"mjo-card-body\">\n <bizapps-product-gl-links\n [Product]=\"Product\"\n [EditMode]=\"EditMode\"\n [FormContext]=\"FormContext\"\n (Navigate)=\"Navigate.emit($event)\">\n </bizapps-product-gl-links>\n </div>\n </div>\n</div>\n", styles: [".mjo-acct-widget-wrap {\n display: flex;\n flex-direction: column;\n gap: var(--mj-space-4, 16px);\n width: 100%;\n}\n\n.mjo-acct-card {\n background: var(--mj-bg-surface-card, rgba(255, 255, 255, 0.05));\n border: 1px solid var(--mj-border-default, rgba(255, 255, 255, 0.12));\n border-radius: var(--mj-radius-lg, 10px);\n overflow: hidden;\n}\n\n.mjo-card-head {\n padding: 12px 16px;\n background: var(--mj-bg-surface-sunken, rgba(0, 0, 0, 0.1));\n border-bottom: 1px solid var(--mj-border-default, rgba(255, 255, 255, 0.1));\n font-size: 13.5px;\n font-weight: 700;\n color: var(--mj-text-primary, #0f172a);\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.mjo-card-head i {\n color: var(--mj-brand-primary, #0284c7);\n}\n\n.mjo-card-body {\n padding: 16px;\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));\n gap: 16px;\n}\n"] }]
|
|
51
46
|
}], null, { Product: [{
|
|
52
47
|
type: Input
|
|
53
48
|
}], EditMode: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-accounting-widget.component.js","sourceRoot":"","sources":["../../../../../src/lib/custom/Product/widgets/product-accounting-widget.component.ts","../../../../../src/lib/custom/Product/widgets/product-accounting-widget.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;;;;AAIvE;;GAEG;AAOH,MAAM,OAAO,uCAAuC;IAChC,OAAO,CAAgC;IACvC,QAAQ,GAAG,KAAK,CAAC;IACjB,WAAW,CAAe;IAEzB,QAAQ,GAAG,IAAI,YAAY,EAAuB,CAAC;iIAL3D,uCAAuC;6DAAvC,uCAAuC;YCX5C,AADJ,AADJ,8BAAkC,aACH,aACI;YACvB,uBAA0C;YAC1C,4BAAM;YAAA,mEAAuD;YACjE,AADiE,iBAAO,EAClE;YAEF,AADJ,8BAA2B,uBAUtB;YADG,uIAAY,yBAAqB,IAAC;YACrC,iBAAgB;YACjB,wCAQC;YADG,uIAAY,yBAAqB,IAAC;YACrC,iBAAgB;YACjB,wCAQC;YADG,uIAAY,yBAAqB,IAAC;
|
|
1
|
+
{"version":3,"file":"product-accounting-widget.component.js","sourceRoot":"","sources":["../../../../../src/lib/custom/Product/widgets/product-accounting-widget.component.ts","../../../../../src/lib/custom/Product/widgets/product-accounting-widget.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;;;;AAIvE;;GAEG;AAOH,MAAM,OAAO,uCAAuC;IAChC,OAAO,CAAgC;IACvC,QAAQ,GAAG,KAAK,CAAC;IACjB,WAAW,CAAe;IAEzB,QAAQ,GAAG,IAAI,YAAY,EAAuB,CAAC;iIAL3D,uCAAuC;6DAAvC,uCAAuC;YCX5C,AADJ,AADJ,8BAAkC,aACH,aACI;YACvB,uBAA0C;YAC1C,4BAAM;YAAA,mEAAuD;YACjE,AADiE,iBAAO,EAClE;YAEF,AADJ,8BAA2B,uBAUtB;YADG,uIAAY,yBAAqB,IAAC;YACrC,iBAAgB;YACjB,wCAQC;YADG,uIAAY,yBAAqB,IAAC;YACrC,iBAAgB;YACjB,wCAQC;YADG,uIAAY,yBAAqB,IAAC;YAG9C,AADI,AADK,iBAAgB,EACf,EACJ;YAaE,AADJ,AADJ,+BAA2B,cACI,mCAKgB;YAAnC,mJAAY,yBAAqB,IAAC;YAIlD,AADI,AADI,AADI,iBAA2B,EACzB,EACJ,EACJ;;YAjDU,eAAkB;YAKlB,AADA,AAHA,AADA,oCAAkB,mBACA,0BAGG,gCACM;YAK3B,cAAkB;YAKlB,AADA,AAHA,AADA,oCAAkB,mBACA,0BAGG,gCACM;YAI3B,cAAkB;YAKlB,AADA,AAHA,AADA,oCAAkB,mBACA,0BAGG,gCACM;YAkB3B,eAAmB;YAEnB,AADA,AADA,qCAAmB,0BACE,gCACM;;;iFDvC9B,uCAAuC;cANnD,SAAS;6BACM,KAAK,YACP,mCAAmC;;kBAK5C,KAAK;;kBACL,KAAK;;kBACL,KAAK;;kBAEL,MAAM;;kFALE,uCAAuC"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { EventEmitter, OnInit, OnChanges, SimpleChanges } from '@angular/core';
|
|
2
|
+
import { type CompositeFilterDescriptor, type FilterFieldInfo } from '@memberjunction/ng-filter-builder';
|
|
3
|
+
import { CdkDragDrop } from '@angular/cdk/drag-drop';
|
|
2
4
|
import type { FormContext, FormNavigationEvent } from '@memberjunction/ng-base-forms';
|
|
3
5
|
import type { RunViewParams } from '@memberjunction/core';
|
|
4
|
-
import type { mjBizAppsOrdersProductEntity
|
|
6
|
+
import type { mjBizAppsOrdersProductEntity } from '@mj-biz-apps/orders-entities';
|
|
7
|
+
import { ProductPriceEntity } from '@mj-biz-apps/orders-entities';
|
|
5
8
|
import * as i0 from "@angular/core";
|
|
6
9
|
export interface PriceChannel {
|
|
7
10
|
ID: string | null;
|
|
@@ -11,7 +14,7 @@ export interface PriceChannel {
|
|
|
11
14
|
DiscountDescription?: string;
|
|
12
15
|
}
|
|
13
16
|
export interface LadderTierRow {
|
|
14
|
-
Record:
|
|
17
|
+
Record: ProductPriceEntity;
|
|
15
18
|
ID: string;
|
|
16
19
|
TierNumber: number;
|
|
17
20
|
BracketLabel: string;
|
|
@@ -37,6 +40,15 @@ export interface WidgetToast {
|
|
|
37
40
|
Message: string;
|
|
38
41
|
Icon: string;
|
|
39
42
|
}
|
|
43
|
+
export interface PriceCard {
|
|
44
|
+
ID: string;
|
|
45
|
+
Name: string;
|
|
46
|
+
Amount: number;
|
|
47
|
+
Inherited: boolean;
|
|
48
|
+
SourceLabel: string;
|
|
49
|
+
WhenText: string;
|
|
50
|
+
Record: ProductPriceEntity;
|
|
51
|
+
}
|
|
40
52
|
/**
|
|
41
53
|
* World-Class Product Pricing Matrix & Volume Ladder Widget (Option 1).
|
|
42
54
|
*
|
|
@@ -50,18 +62,34 @@ export declare class BizAppsProductPricingWidgetComponent implements OnInit, OnC
|
|
|
50
62
|
FormContext?: FormContext;
|
|
51
63
|
Navigate: EventEmitter<FormNavigationEvent>;
|
|
52
64
|
PriceChanged: EventEmitter<void>;
|
|
53
|
-
TierAdded: EventEmitter<
|
|
65
|
+
TierAdded: EventEmitter<ProductPriceEntity>;
|
|
54
66
|
private cdr?;
|
|
55
67
|
private navService?;
|
|
56
68
|
constructor();
|
|
57
69
|
IsLoading: boolean;
|
|
58
70
|
IsSaving: boolean;
|
|
59
71
|
IsAdvancedGridView: boolean;
|
|
72
|
+
QuoteDrawerOpen: boolean;
|
|
73
|
+
ExpandedPriceID: string | null;
|
|
74
|
+
SelectedPriceID: string | null;
|
|
75
|
+
WhenEditorPriceID: string | null;
|
|
76
|
+
AdvancedEditingID: string | null;
|
|
77
|
+
WhenFilter: CompositeFilterDescriptor | null;
|
|
78
|
+
WhenFields: FilterFieldInfo[];
|
|
79
|
+
NewPriceName: string;
|
|
80
|
+
NewPriceAmount: number;
|
|
81
|
+
QuoteOrgType: string;
|
|
82
|
+
QuoteResult: {
|
|
83
|
+
AmountText: string;
|
|
84
|
+
Why: string;
|
|
85
|
+
Skipped: string;
|
|
86
|
+
};
|
|
87
|
+
InheritedRecords: ProductPriceEntity[];
|
|
60
88
|
ActiveToast: WidgetToast | null;
|
|
61
89
|
private toastTimer?;
|
|
62
90
|
Channels: PriceChannel[];
|
|
63
91
|
SelectedChannelID: string | null;
|
|
64
|
-
AllPriceRecords:
|
|
92
|
+
AllPriceRecords: ProductPriceEntity[];
|
|
65
93
|
LadderTiers: LadderTierRow[];
|
|
66
94
|
StepBars: StepCurveBar[];
|
|
67
95
|
NewTierMin: number;
|
|
@@ -80,9 +108,24 @@ export declare class BizAppsProductPricingWidgetComponent implements OnInit, OnC
|
|
|
80
108
|
ngOnChanges(changes: SimpleChanges): void;
|
|
81
109
|
get BaseListPrice(): number;
|
|
82
110
|
get FormattedBasePrice(): string;
|
|
111
|
+
/** Price-list tabs only when a real list exists. One "Base / Direct List" tab is leftover chrome. */
|
|
112
|
+
get ShowChannelBar(): boolean;
|
|
113
|
+
get PricesForChannel(): ProductPriceEntity[];
|
|
114
|
+
get VisiblePrices(): PriceCard[];
|
|
115
|
+
PriceCanExpand(row: PriceCard): boolean;
|
|
116
|
+
PriceDisplayName(p: ProductPriceEntity): string;
|
|
117
|
+
HasWhen(p: ProductPriceEntity): boolean;
|
|
118
|
+
WhenSentence(p: ProductPriceEntity): string;
|
|
119
|
+
private whenPart;
|
|
120
|
+
private whenFieldLabel;
|
|
121
|
+
OpenPriceRecord(p: ProductPriceEntity, event?: Event): void;
|
|
122
|
+
CloseQuote(): void;
|
|
123
|
+
TogglePrice(row: PriceCard): void;
|
|
124
|
+
OnPriceDrop(event: CdkDragDrop<PriceCard[]>): Promise<void>;
|
|
83
125
|
get ProductPricesViewParams(): RunViewParams | null;
|
|
84
126
|
get NewPriceRecordValues(): Record<string, unknown>;
|
|
85
127
|
LoadPricingData(): Promise<void>;
|
|
128
|
+
private countPricesOnChannel;
|
|
86
129
|
private buildChannelsList;
|
|
87
130
|
SelectChannel(channelId: string | null): void;
|
|
88
131
|
ToggleAdvancedView(): void;
|
|
@@ -97,6 +140,28 @@ export declare class BizAppsProductPricingWidgetComponent implements OnInit, OnC
|
|
|
97
140
|
DismissToast(): void;
|
|
98
141
|
private extractErrorMessage;
|
|
99
142
|
FormatCurrency(val: number): string;
|
|
143
|
+
/** Qty bands, end date, non-standard fee, recurrence — not a default List/Base row. */
|
|
144
|
+
HasAdvanced(p: ProductPriceEntity | null | undefined): boolean;
|
|
145
|
+
OpenAdvanced(id: string, event?: Event): void;
|
|
146
|
+
CloseWhenEditor(): void;
|
|
147
|
+
OpenWhenEditor(row: PriceCard): void;
|
|
148
|
+
OnWhenFilterChange(filter: CompositeFilterDescriptor): void;
|
|
149
|
+
private parseWhenFilter;
|
|
150
|
+
private buildWhenFields;
|
|
151
|
+
private filterTypeFor;
|
|
152
|
+
SaveWhen(row: PriceCard): Promise<void>;
|
|
153
|
+
ClearWhen(row: PriceCard): Promise<void>;
|
|
154
|
+
private syncFromCollection;
|
|
155
|
+
private ensurePricesLoaded;
|
|
156
|
+
/** One graph save — Product + Prices — same as Order.Lines. Never child.Save(). */
|
|
157
|
+
private saveProductGraph;
|
|
158
|
+
private nextPriorityOnChannel;
|
|
159
|
+
SavePrice(p: ProductPriceEntity): Promise<void>;
|
|
160
|
+
AddPrice(): Promise<void>;
|
|
161
|
+
OverrideInherited(row: PriceCard): Promise<void>;
|
|
162
|
+
OpenQuote(): void;
|
|
163
|
+
RunQuote(): void;
|
|
164
|
+
private loadInheritedPrices;
|
|
100
165
|
static ɵfac: i0.ɵɵFactoryDeclaration<BizAppsProductPricingWidgetComponent, never>;
|
|
101
166
|
static ɵcmp: i0.ɵɵComponentDeclaration<BizAppsProductPricingWidgetComponent, "bizapps-product-pricing-widget", never, { "Product": { "alias": "Product"; "required": false; }; "EditMode": { "alias": "EditMode"; "required": false; }; "FormContext": { "alias": "FormContext"; "required": false; }; }, { "Navigate": "Navigate"; "PriceChanged": "PriceChanged"; "TierAdded": "TierAdded"; }, never, never, false, never>;
|
|
102
167
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"product-pricing-widget.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/custom/Product/widgets/product-pricing-widget.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,YAAY,EAEZ,MAAM,EACN,SAAS,EACT,aAAa,EAIhB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"product-pricing-widget.component.d.ts","sourceRoot":"","sources":["../../../../../src/lib/custom/Product/widgets/product-pricing-widget.component.ts"],"names":[],"mappings":"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"}
|