@rolatech/angular-course 17.5.3 → 17.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -19,10 +19,10 @@ export class CourseDetailsComponent {
19
19
  this.viewportScroller.scrollToAnchor(id);
20
20
  }
21
21
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: CourseDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.1", type: CourseDetailsComponent, isStandalone: true, selector: "rolatech-course-details", inputs: { details: { classPropertyName: "details", publicName: "details", isSignal: true, isRequired: true, transformFunction: null }, instructor: { classPropertyName: "instructor", publicName: "instructor", isSignal: true, isRequired: false, transformFunction: null }, username: { classPropertyName: "username", publicName: "username", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"py-3\" id=\"details\">\n <div class=\"text-xl font-medium py-2\">\u8BE6\u60C5</div>\n @if (details()) {\n @for (detail of details(); track $index) {\n <div>\n @if (detail.title) {\n <div class=\"py-3 flex items-center gap-3\">\n <span class=\"h-4 w-1 bg-orange-500 inline-block\"></span>\n <span class=\"text-lg font-medium py-1\"> {{ detail.title }}</span>\n </div>\n }\n @if (detail.content) {\n <div>\n {{ detail.content }}\n </div>\n }\n @if (detail.media) {\n <div class=\"w-80%\">\n @for (item of detail.media; track item) {\n <div class=\"py-3\">\n <rolatech-thumbnail [src]=\"item.url\" size=\"small\"></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n </div>\n }\n }\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: ThumbnailComponent, selector: "rolatech-thumbnail", inputs: ["src", "size", "mode"] }] }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.1", type: CourseDetailsComponent, isStandalone: true, selector: "rolatech-course-details", inputs: { details: { classPropertyName: "details", publicName: "details", isSignal: true, isRequired: true, transformFunction: null }, instructor: { classPropertyName: "instructor", publicName: "instructor", isSignal: true, isRequired: false, transformFunction: null }, username: { classPropertyName: "username", publicName: "username", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"py-3\" id=\"details\">\n <div class=\"text-xl font-medium py-2\">\u8BE6\u60C5</div>\n @if (details()) {\n @for (detail of details(); track $index) {\n <div>\n @if (detail.title) {\n <div class=\"py-3 flex items-center gap-3\">\n <span class=\"h-4 w-1 bg-orange-500 inline-block\"></span>\n <span class=\"text-lg font-medium py-1\"> {{ detail.title }}</span>\n </div>\n }\n @if (detail.content) {\n <div>\n {{ detail.content }}\n </div>\n }\n @if (detail.media) {\n <div class=\"w-80%\">\n @for (item of detail.media; track item) {\n <div class=\"py-3\">\n <rolatech-thumbnail\n [src]=\"item.url\"\n size=\"small\"\n mode=\"full\"\n [width]=\"item.width\"\n [height]=\"item.height\"\n ></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n </div>\n }\n }\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: ThumbnailComponent, selector: "rolatech-thumbnail", inputs: ["src", "size", "mode", "width", "height"] }] }); }
23
23
  }
24
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: CourseDetailsComponent, decorators: [{
25
25
  type: Component,
26
- args: [{ selector: 'rolatech-course-details', standalone: true, imports: [ThumbnailComponent], template: "<div class=\"py-3\" id=\"details\">\n <div class=\"text-xl font-medium py-2\">\u8BE6\u60C5</div>\n @if (details()) {\n @for (detail of details(); track $index) {\n <div>\n @if (detail.title) {\n <div class=\"py-3 flex items-center gap-3\">\n <span class=\"h-4 w-1 bg-orange-500 inline-block\"></span>\n <span class=\"text-lg font-medium py-1\"> {{ detail.title }}</span>\n </div>\n }\n @if (detail.content) {\n <div>\n {{ detail.content }}\n </div>\n }\n @if (detail.media) {\n <div class=\"w-80%\">\n @for (item of detail.media; track item) {\n <div class=\"py-3\">\n <rolatech-thumbnail [src]=\"item.url\" size=\"small\"></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n </div>\n }\n }\n</div>\n" }]
26
+ args: [{ selector: 'rolatech-course-details', standalone: true, imports: [ThumbnailComponent], template: "<div class=\"py-3\" id=\"details\">\n <div class=\"text-xl font-medium py-2\">\u8BE6\u60C5</div>\n @if (details()) {\n @for (detail of details(); track $index) {\n <div>\n @if (detail.title) {\n <div class=\"py-3 flex items-center gap-3\">\n <span class=\"h-4 w-1 bg-orange-500 inline-block\"></span>\n <span class=\"text-lg font-medium py-1\"> {{ detail.title }}</span>\n </div>\n }\n @if (detail.content) {\n <div>\n {{ detail.content }}\n </div>\n }\n @if (detail.media) {\n <div class=\"w-80%\">\n @for (item of detail.media; track item) {\n <div class=\"py-3\">\n <rolatech-thumbnail\n [src]=\"item.url\"\n size=\"small\"\n mode=\"full\"\n [width]=\"item.width\"\n [height]=\"item.height\"\n ></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n </div>\n }\n }\n</div>\n" }]
27
27
  }] });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291cnNlLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvdXJzZS9zcmMvbGliL2NvbXBvbmVudHMvY291cnNlLWRldGFpbHMvY291cnNlLWRldGFpbHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvdXJzZS9zcmMvbGliL2NvbXBvbmVudHMvY291cnNlLWRldGFpbHMvY291cnNlLWRldGFpbHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBVWxFLE1BQU0sT0FBTyxzQkFBc0I7SUFQbkM7UUFRRSxZQUFPLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBa0IsQ0FBQztRQUMzQyxlQUFVLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDN0IsYUFBUSxHQUFHLEtBQUssRUFBVSxDQUFDO1FBQzNCLE9BQUUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFeEIscUJBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUlqQyxTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2IsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLGtCQUFhLEdBQUcsRUFBRSxDQUFDO0tBTXBCO0lBTEMsUUFBUSxLQUFVLENBQUM7SUFFbkIsZUFBZSxDQUFDLEVBQVU7UUFDeEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDOzhHQWxCVSxzQkFBc0I7a0dBQXRCLHNCQUFzQixvZUNabkMsODRCQTZCQSwwRERuQlksa0JBQWtCOzsyRkFFakIsc0JBQXNCO2tCQVBsQyxTQUFTOytCQUNFLHlCQUF5QixjQUd2QixJQUFJLFdBQ1AsQ0FBQyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZpZXdwb3J0U2Nyb2xsZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBpbmplY3QsIGlucHV0LCBPbkluaXQsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaHVtYm5haWxDb21wb25lbnQgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21wb25lbnRzJztcbmltcG9ydCB7IENvdXJzZURldGFpbCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1jb3Vyc2UtZGV0YWlscycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3Vyc2UtZGV0YWlscy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvdXJzZS1kZXRhaWxzLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtUaHVtYm5haWxDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBDb3Vyc2VEZXRhaWxzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZGV0YWlscyA9IGlucHV0LnJlcXVpcmVkPENvdXJzZURldGFpbFtdPigpO1xuICBpbnN0cnVjdG9yID0gaW5wdXQ8c3RyaW5nPigpO1xuICB1c2VybmFtZSA9IGlucHV0PHN0cmluZz4oKTtcbiAgZWwgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgdmlld3BvcnRTY3JvbGxlciA9IGluamVjdChWaWV3cG9ydFNjcm9sbGVyKTtcbiAgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG5cbiAgcGxheWVyOiBhbnk7XG5cbiAgc2hvdyA9IGZhbHNlO1xuICBtZWRpYUluZGV4ID0gMDtcbiAgZmluYWxTY2hlZHVsZSA9IFtdO1xuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgb25DbGlja1Njcm9sbGVyKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZpZXdwb3J0U2Nyb2xsZXIuc2Nyb2xsVG9BbmNob3IoaWQpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHktM1wiIGlkPVwiZGV0YWlsc1wiPlxuICA8ZGl2IGNsYXNzPVwidGV4dC14bCBmb250LW1lZGl1bSBweS0yXCI+6K+m5oOFPC9kaXY+XG4gIEBpZiAoZGV0YWlscygpKSB7XG4gICAgQGZvciAoZGV0YWlsIG9mIGRldGFpbHMoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8ZGl2PlxuICAgICAgICBAaWYgKGRldGFpbC50aXRsZSkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS0zIGZsZXggaXRlbXMtY2VudGVyIGdhcC0zXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImgtNCB3LTEgYmctb3JhbmdlLTUwMCBpbmxpbmUtYmxvY2tcIj48L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtbGcgZm9udC1tZWRpdW0gcHktMVwiPiB7eyBkZXRhaWwudGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChkZXRhaWwuY29udGVudCkge1xuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7eyBkZXRhaWwuY29udGVudCB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIEBpZiAoZGV0YWlsLm1lZGlhKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInctODAlXCI+XG4gICAgICAgICAgICBAZm9yIChpdGVtIG9mIGRldGFpbC5tZWRpYTsgdHJhY2sgaXRlbSkge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHktM1wiPlxuICAgICAgICAgICAgICAgIDxyb2xhdGVjaC10aHVtYm5haWwgW3NyY109XCJpdGVtLnVybFwiIHNpemU9XCJzbWFsbFwiPjwvcm9sYXRlY2gtdGh1bWJuYWlsPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgPC9kaXY+XG4gICAgfVxuICB9XG48L2Rpdj5cbiJdfQ==
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291cnNlLWRldGFpbHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvdXJzZS9zcmMvbGliL2NvbXBvbmVudHMvY291cnNlLWRldGFpbHMvY291cnNlLWRldGFpbHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvdXJzZS9zcmMvbGliL2NvbXBvbmVudHMvY291cnNlLWRldGFpbHMvY291cnNlLWRldGFpbHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBVWxFLE1BQU0sT0FBTyxzQkFBc0I7SUFQbkM7UUFRRSxZQUFPLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBa0IsQ0FBQztRQUMzQyxlQUFVLEdBQUcsS0FBSyxFQUFVLENBQUM7UUFDN0IsYUFBUSxHQUFHLEtBQUssRUFBVSxDQUFDO1FBQzNCLE9BQUUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFeEIscUJBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUlqQyxTQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2IsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLGtCQUFhLEdBQUcsRUFBRSxDQUFDO0tBTXBCO0lBTEMsUUFBUSxLQUFVLENBQUM7SUFFbkIsZUFBZSxDQUFDLEVBQVU7UUFDeEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDOzhHQWxCVSxzQkFBc0I7a0dBQXRCLHNCQUFzQixvZUNabkMsNmpDQW1DQSwwRER6Qlksa0JBQWtCOzsyRkFFakIsc0JBQXNCO2tCQVBsQyxTQUFTOytCQUNFLHlCQUF5QixjQUd2QixJQUFJLFdBQ1AsQ0FBQyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZpZXdwb3J0U2Nyb2xsZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBpbmplY3QsIGlucHV0LCBPbkluaXQsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaHVtYm5haWxDb21wb25lbnQgfSBmcm9tICdAcm9sYXRlY2gvYW5ndWxhci1jb21wb25lbnRzJztcbmltcG9ydCB7IENvdXJzZURldGFpbCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyb2xhdGVjaC1jb3Vyc2UtZGV0YWlscycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb3Vyc2UtZGV0YWlscy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvdXJzZS1kZXRhaWxzLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtUaHVtYm5haWxDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBDb3Vyc2VEZXRhaWxzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZGV0YWlscyA9IGlucHV0LnJlcXVpcmVkPENvdXJzZURldGFpbFtdPigpO1xuICBpbnN0cnVjdG9yID0gaW5wdXQ8c3RyaW5nPigpO1xuICB1c2VybmFtZSA9IGlucHV0PHN0cmluZz4oKTtcbiAgZWwgPSBpbmplY3QoRWxlbWVudFJlZik7XG5cbiAgdmlld3BvcnRTY3JvbGxlciA9IGluamVjdChWaWV3cG9ydFNjcm9sbGVyKTtcbiAgcGxhdGZvcm1JZCA9IGluamVjdChQTEFURk9STV9JRCk7XG5cbiAgcGxheWVyOiBhbnk7XG5cbiAgc2hvdyA9IGZhbHNlO1xuICBtZWRpYUluZGV4ID0gMDtcbiAgZmluYWxTY2hlZHVsZSA9IFtdO1xuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgb25DbGlja1Njcm9sbGVyKGlkOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZpZXdwb3J0U2Nyb2xsZXIuc2Nyb2xsVG9BbmNob3IoaWQpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHktM1wiIGlkPVwiZGV0YWlsc1wiPlxuICA8ZGl2IGNsYXNzPVwidGV4dC14bCBmb250LW1lZGl1bSBweS0yXCI+6K+m5oOFPC9kaXY+XG4gIEBpZiAoZGV0YWlscygpKSB7XG4gICAgQGZvciAoZGV0YWlsIG9mIGRldGFpbHMoKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8ZGl2PlxuICAgICAgICBAaWYgKGRldGFpbC50aXRsZSkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJweS0zIGZsZXggaXRlbXMtY2VudGVyIGdhcC0zXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImgtNCB3LTEgYmctb3JhbmdlLTUwMCBpbmxpbmUtYmxvY2tcIj48L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtbGcgZm9udC1tZWRpdW0gcHktMVwiPiB7eyBkZXRhaWwudGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChkZXRhaWwuY29udGVudCkge1xuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7eyBkZXRhaWwuY29udGVudCB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIEBpZiAoZGV0YWlsLm1lZGlhKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInctODAlXCI+XG4gICAgICAgICAgICBAZm9yIChpdGVtIG9mIGRldGFpbC5tZWRpYTsgdHJhY2sgaXRlbSkge1xuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicHktM1wiPlxuICAgICAgICAgICAgICAgIDxyb2xhdGVjaC10aHVtYm5haWxcbiAgICAgICAgICAgICAgICAgIFtzcmNdPVwiaXRlbS51cmxcIlxuICAgICAgICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgICAgICAgIG1vZGU9XCJmdWxsXCJcbiAgICAgICAgICAgICAgICAgIFt3aWR0aF09XCJpdGVtLndpZHRoXCJcbiAgICAgICAgICAgICAgICAgIFtoZWlnaHRdPVwiaXRlbS5oZWlnaHRcIlxuICAgICAgICAgICAgICAgID48L3JvbGF0ZWNoLXRodW1ibmFpbD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIH1cbiAgfVxuPC9kaXY+XG4iXX0=
@@ -25,7 +25,7 @@ export class CourseMediaComponent {
25
25
  dialogRef.afterClosed().subscribe((result) => { });
26
26
  }
27
27
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: CourseMediaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.1", type: CourseMediaComponent, isStandalone: true, selector: "rolatech-course-media", inputs: { media: { classPropertyName: "media", publicName: "media", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (media()) {\n @if (min()) {\n <div class=\"md:w-80 object-cover aspect-video bg-[--rt-10-percent-layer] rounded-lg\">\n @if (media()) {\n <rolatech-thumbnail [src]=\"media()[0].url\" size=\"small\"></rolatech-thumbnail>\n }\n </div>\n } @else {\n <div>\n <div class=\"object-cover aspect-video bg-[--rt-10-percent-layer]\">\n <rolatech-thumbnail [src]=\"media()[mediaIndex].url\" size=\"small\"></rolatech-thumbnail>\n </div>\n @for (item of media(); track $index) {\n <div\n class=\"inline-flex flex-row mt-3 mr-3 cursor-pointer rounded-md\"\n (click)=\"mediaIndex = $index\"\n [ngClass]=\"mediaIndex === $index ? '' : 'opacity-30'\"\n >\n <rolatech-thumbnail [src]=\"item.url\" size=\"small\"></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n}\n", styles: [""], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ThumbnailComponent, selector: "rolatech-thumbnail", inputs: ["src", "size", "mode"] }] }); }
28
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.1", type: CourseMediaComponent, isStandalone: true, selector: "rolatech-course-media", inputs: { media: { classPropertyName: "media", publicName: "media", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (media()) {\n @if (min()) {\n <div class=\"md:w-80 object-cover aspect-video bg-[--rt-10-percent-layer] rounded-lg\">\n @if (media()) {\n <rolatech-thumbnail [src]=\"media()[0].url\" size=\"small\"></rolatech-thumbnail>\n }\n </div>\n } @else {\n <div>\n <div class=\"object-cover aspect-video bg-[--rt-10-percent-layer]\">\n <rolatech-thumbnail [src]=\"media()[mediaIndex].url\" size=\"small\"></rolatech-thumbnail>\n </div>\n @for (item of media(); track $index) {\n <div\n class=\"inline-flex flex-row mt-3 mr-3 cursor-pointer rounded-md\"\n (click)=\"mediaIndex = $index\"\n [ngClass]=\"mediaIndex === $index ? '' : 'opacity-30'\"\n >\n <rolatech-thumbnail [src]=\"item.url\" size=\"small\"></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n}\n", styles: [""], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ThumbnailComponent, selector: "rolatech-thumbnail", inputs: ["src", "size", "mode", "width", "height"] }] }); }
29
29
  }
30
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: CourseMediaComponent, decorators: [{
31
31
  type: Component,
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { inject, Component } from '@angular/core';
3
- import { C as CourseService, a as CategoryService, b as CourseItemComponent } from './rolatech-angular-course-rolatech-angular-course-A8FqVnCf.mjs';
3
+ import { C as CourseService, a as CategoryService, b as CourseItemComponent } from './rolatech-angular-course-rolatech-angular-course-DzJibnO6.mjs';
4
4
  import { AngularCommonModule } from '@rolatech/angular-common';
5
5
  import { BaseComponent, AngularComponentsModule, RichViewComponent, RichItemComponent } from '@rolatech/angular-components';
6
6
  import * as i1 from '@angular/router';
@@ -75,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImpor
75
75
  }] });
76
76
 
77
77
  export { CourseIndexComponent };
78
- //# sourceMappingURL=rolatech-angular-course-course-index.component-WXdJrvEn.mjs.map
78
+ //# sourceMappingURL=rolatech-angular-course-course-index.component-C89fCBfR.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"rolatech-angular-course-course-index.component-WXdJrvEn.mjs","sources":["../../../../libs/angular-course/src/lib/pages/course/course-index/course-index.component.ts","../../../../libs/angular-course/src/lib/pages/course/course-index/course-index.component.html"],"sourcesContent":["import { Component, inject, OnInit } from '@angular/core';\nimport { CourseCategory, Course } from '../../../interfaces';\nimport { CategoryService, CourseService } from '../../../services';\nimport { AngularCommonModule } from '@rolatech/angular-common';\nimport { AngularComponentsModule, BaseComponent, RichItemComponent, RichViewComponent } from '@rolatech/angular-components';\nimport { CourseItemComponent } from '../../../components/course-item/course-item.component';\n\n@Component({\n standalone: true,\n imports: [AngularCommonModule, AngularComponentsModule, CourseItemComponent, RichViewComponent, RichItemComponent],\n selector: 'rolatech-course-index',\n templateUrl: './course-index.component.html',\n styleUrls: ['./course-index.component.scss'],\n})\nexport class CourseIndexComponent extends BaseComponent implements OnInit {\n courses: Course[] = [];\n categories: CourseCategory[] = [];\n courseService = inject(CourseService);\n categoryService = inject(CategoryService);\n meta: any;\n loading = false;\n\n ngOnInit(): void {\n this.findCategories();\n this.findCourses();\n this.titleService.setTitle('课程 - 拼小课');\n }\n findCourses() {\n this.loading = true;\n const options = {\n sort: 'updatedAt desc',\n filter: 'published:true',\n };\n this.courseService.find(options).subscribe({\n next: (res: any) => {\n this.courses = res.data;\n this.meta = res.meta;\n this.loading = false;\n },\n error: (error) => {\n this.loading = false;\n },\n });\n }\n findCategories() {\n this.categoryService.find({}).subscribe({\n next: (res: any) => {\n this.categories = res.data;\n },\n });\n }\n}\n","<div class=\"min-w-[320px] max-w-[1120px] m-auto\">\n <div class=\"p-3 hidden md:block text-2xl font-medium\">全部课程</div>\n @if (loading) {\n @for (number of [0, 1, 2, 3, 4, 5]; track number) {\n <div class=\"flex flex-row animate-pulse mt-3 mr-4 cursor-pointer w-full\">\n <div class=\"h-fit w-2/5 md:w-1/4 aspect-video hover:bg-[--rt-base-background] rounded-lg\"></div>\n <div class=\"w-3/5 md:w-3/4 ml-3 py-1 flex flex-col justify-between\">\n <div class=\"space-y-3\">\n <div class=\"h-4 bg-[--rt-base-background] rounded col-span-2\"></div>\n <div class=\"h-2 bg-[--rt-base-background] rounded col-span-1\"></div>\n <div class=\"h-2 bg-[--rt-base-background] rounded col-span-1 py-1\"></div>\n </div>\n <div>\n <div class=\"h-2 bg-[--rt-base-background] rounded col-span-2 py-1\"></div>\n </div>\n </div>\n </div>\n }\n } @else {\n <rolatech-rich-view list>\n @for (item of courses; track $index) {\n @defer {\n <rolatech-rich-item\n [routerLink]=\"['./', item.id]\"\n [thumbnail]=\"item.media[0].url + '!w400'\"\n [title]=\"item.name\"\n [subtitle]=\"item.description\"\n [price]=\"item.pricing[0].total / 100\"\n ></rolatech-rich-item>\n }\n }\n </rolatech-rich-view>\n }\n</div>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcM,MAAO,oBAAqB,SAAQ,aAAa,CAAA;AAPvD,IAAA,WAAA,GAAA;;QAQE,IAAO,CAAA,OAAA,GAAa,EAAE,CAAC;QACvB,IAAU,CAAA,UAAA,GAAqB,EAAE,CAAC;AAClC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;AACtC,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;QAE1C,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;AA+BjB,KAAA;IA7BC,QAAQ,GAAA;QACN,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;AACnB,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;KACxC;IACD,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,IAAI,EAAE,gBAAgB;AACtB,YAAA,MAAM,EAAE,gBAAgB;SACzB,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC;AACzC,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC;AACxB,gBAAA,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;AACrB,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aACtB;AACD,YAAA,KAAK,EAAE,CAAC,KAAK,KAAI;AACf,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aACtB;AACF,SAAA,CAAC,CAAC;KACJ;IACD,cAAc,GAAA;QACZ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;AACtC,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC;aAC5B;AACF,SAAA,CAAC,CAAC;KACJ;8GApCU,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECdjC,05CAkCA,EDzBY,MAAA,EAAA,CAAA,kCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,8BAAE,uBAAuB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAuB,iBAAiB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,sBAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,UAAA,EAAE,iBAAiB,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAKtG,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAPhC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,mBAAmB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,YACxG,uBAAuB,EAAA,QAAA,EAAA,05CAAA,EAAA,MAAA,EAAA,CAAA,kCAAA,CAAA,EAAA,CAAA;;;;;"}
1
+ {"version":3,"file":"rolatech-angular-course-course-index.component-C89fCBfR.mjs","sources":["../../../../libs/angular-course/src/lib/pages/course/course-index/course-index.component.ts","../../../../libs/angular-course/src/lib/pages/course/course-index/course-index.component.html"],"sourcesContent":["import { Component, inject, OnInit } from '@angular/core';\nimport { CourseCategory, Course } from '../../../interfaces';\nimport { CategoryService, CourseService } from '../../../services';\nimport { AngularCommonModule } from '@rolatech/angular-common';\nimport { AngularComponentsModule, BaseComponent, RichItemComponent, RichViewComponent } from '@rolatech/angular-components';\nimport { CourseItemComponent } from '../../../components/course-item/course-item.component';\n\n@Component({\n standalone: true,\n imports: [AngularCommonModule, AngularComponentsModule, CourseItemComponent, RichViewComponent, RichItemComponent],\n selector: 'rolatech-course-index',\n templateUrl: './course-index.component.html',\n styleUrls: ['./course-index.component.scss'],\n})\nexport class CourseIndexComponent extends BaseComponent implements OnInit {\n courses: Course[] = [];\n categories: CourseCategory[] = [];\n courseService = inject(CourseService);\n categoryService = inject(CategoryService);\n meta: any;\n loading = false;\n\n ngOnInit(): void {\n this.findCategories();\n this.findCourses();\n this.titleService.setTitle('课程 - 拼小课');\n }\n findCourses() {\n this.loading = true;\n const options = {\n sort: 'updatedAt desc',\n filter: 'published:true',\n };\n this.courseService.find(options).subscribe({\n next: (res: any) => {\n this.courses = res.data;\n this.meta = res.meta;\n this.loading = false;\n },\n error: (error) => {\n this.loading = false;\n },\n });\n }\n findCategories() {\n this.categoryService.find({}).subscribe({\n next: (res: any) => {\n this.categories = res.data;\n },\n });\n }\n}\n","<div class=\"min-w-[320px] max-w-[1120px] m-auto\">\n <div class=\"p-3 hidden md:block text-2xl font-medium\">全部课程</div>\n @if (loading) {\n @for (number of [0, 1, 2, 3, 4, 5]; track number) {\n <div class=\"flex flex-row animate-pulse mt-3 mr-4 cursor-pointer w-full\">\n <div class=\"h-fit w-2/5 md:w-1/4 aspect-video hover:bg-[--rt-base-background] rounded-lg\"></div>\n <div class=\"w-3/5 md:w-3/4 ml-3 py-1 flex flex-col justify-between\">\n <div class=\"space-y-3\">\n <div class=\"h-4 bg-[--rt-base-background] rounded col-span-2\"></div>\n <div class=\"h-2 bg-[--rt-base-background] rounded col-span-1\"></div>\n <div class=\"h-2 bg-[--rt-base-background] rounded col-span-1 py-1\"></div>\n </div>\n <div>\n <div class=\"h-2 bg-[--rt-base-background] rounded col-span-2 py-1\"></div>\n </div>\n </div>\n </div>\n }\n } @else {\n <rolatech-rich-view list>\n @for (item of courses; track $index) {\n @defer {\n <rolatech-rich-item\n [routerLink]=\"['./', item.id]\"\n [thumbnail]=\"item.media[0].url + '!w400'\"\n [title]=\"item.name\"\n [subtitle]=\"item.description\"\n [price]=\"item.pricing[0].total / 100\"\n ></rolatech-rich-item>\n }\n }\n </rolatech-rich-view>\n }\n</div>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcM,MAAO,oBAAqB,SAAQ,aAAa,CAAA;AAPvD,IAAA,WAAA,GAAA;;QAQE,IAAO,CAAA,OAAA,GAAa,EAAE,CAAC;QACvB,IAAU,CAAA,UAAA,GAAqB,EAAE,CAAC;AAClC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;AACtC,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;QAE1C,IAAO,CAAA,OAAA,GAAG,KAAK,CAAC;AA+BjB,KAAA;IA7BC,QAAQ,GAAA;QACN,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;AACnB,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;KACxC;IACD,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AACpB,QAAA,MAAM,OAAO,GAAG;AACd,YAAA,IAAI,EAAE,gBAAgB;AACtB,YAAA,MAAM,EAAE,gBAAgB;SACzB,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC;AACzC,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC;AACxB,gBAAA,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;AACrB,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aACtB;AACD,YAAA,KAAK,EAAE,CAAC,KAAK,KAAI;AACf,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;aACtB;AACF,SAAA,CAAC,CAAC;KACJ;IACD,cAAc,GAAA;QACZ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;AACtC,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC;aAC5B;AACF,SAAA,CAAC,CAAC;KACJ;8GApCU,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECdjC,05CAkCA,EDzBY,MAAA,EAAA,CAAA,kCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,8BAAE,uBAAuB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAuB,iBAAiB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,sBAAA,EAAA,CAAA,MAAA,CAAA,EAAA,CAAA,UAAA,EAAE,iBAAiB,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAKtG,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAPhC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACP,OAAA,EAAA,CAAC,mBAAmB,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,YACxG,uBAAuB,EAAA,QAAA,EAAA,05CAAA,EAAA,MAAA,EAAA,CAAA,kCAAA,CAAA,EAAA,CAAA;;;;;"}
@@ -582,7 +582,7 @@ class CourseMediaComponent {
582
582
  dialogRef.afterClosed().subscribe((result) => { });
583
583
  }
584
584
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: CourseMediaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
585
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.1", type: CourseMediaComponent, isStandalone: true, selector: "rolatech-course-media", inputs: { media: { classPropertyName: "media", publicName: "media", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (media()) {\n @if (min()) {\n <div class=\"md:w-80 object-cover aspect-video bg-[--rt-10-percent-layer] rounded-lg\">\n @if (media()) {\n <rolatech-thumbnail [src]=\"media()[0].url\" size=\"small\"></rolatech-thumbnail>\n }\n </div>\n } @else {\n <div>\n <div class=\"object-cover aspect-video bg-[--rt-10-percent-layer]\">\n <rolatech-thumbnail [src]=\"media()[mediaIndex].url\" size=\"small\"></rolatech-thumbnail>\n </div>\n @for (item of media(); track $index) {\n <div\n class=\"inline-flex flex-row mt-3 mr-3 cursor-pointer rounded-md\"\n (click)=\"mediaIndex = $index\"\n [ngClass]=\"mediaIndex === $index ? '' : 'opacity-30'\"\n >\n <rolatech-thumbnail [src]=\"item.url\" size=\"small\"></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n}\n", styles: [""], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ThumbnailComponent, selector: "rolatech-thumbnail", inputs: ["src", "size", "mode"] }] }); }
585
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.1", type: CourseMediaComponent, isStandalone: true, selector: "rolatech-course-media", inputs: { media: { classPropertyName: "media", publicName: "media", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (media()) {\n @if (min()) {\n <div class=\"md:w-80 object-cover aspect-video bg-[--rt-10-percent-layer] rounded-lg\">\n @if (media()) {\n <rolatech-thumbnail [src]=\"media()[0].url\" size=\"small\"></rolatech-thumbnail>\n }\n </div>\n } @else {\n <div>\n <div class=\"object-cover aspect-video bg-[--rt-10-percent-layer]\">\n <rolatech-thumbnail [src]=\"media()[mediaIndex].url\" size=\"small\"></rolatech-thumbnail>\n </div>\n @for (item of media(); track $index) {\n <div\n class=\"inline-flex flex-row mt-3 mr-3 cursor-pointer rounded-md\"\n (click)=\"mediaIndex = $index\"\n [ngClass]=\"mediaIndex === $index ? '' : 'opacity-30'\"\n >\n <rolatech-thumbnail [src]=\"item.url\" size=\"small\"></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n}\n", styles: [""], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ThumbnailComponent, selector: "rolatech-thumbnail", inputs: ["src", "size", "mode", "width", "height"] }] }); }
586
586
  }
587
587
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: CourseMediaComponent, decorators: [{
588
588
  type: Component,
@@ -1523,11 +1523,11 @@ class CourseDetailsComponent {
1523
1523
  this.viewportScroller.scrollToAnchor(id);
1524
1524
  }
1525
1525
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: CourseDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1526
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.1", type: CourseDetailsComponent, isStandalone: true, selector: "rolatech-course-details", inputs: { details: { classPropertyName: "details", publicName: "details", isSignal: true, isRequired: true, transformFunction: null }, instructor: { classPropertyName: "instructor", publicName: "instructor", isSignal: true, isRequired: false, transformFunction: null }, username: { classPropertyName: "username", publicName: "username", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"py-3\" id=\"details\">\n <div class=\"text-xl font-medium py-2\">\u8BE6\u60C5</div>\n @if (details()) {\n @for (detail of details(); track $index) {\n <div>\n @if (detail.title) {\n <div class=\"py-3 flex items-center gap-3\">\n <span class=\"h-4 w-1 bg-orange-500 inline-block\"></span>\n <span class=\"text-lg font-medium py-1\"> {{ detail.title }}</span>\n </div>\n }\n @if (detail.content) {\n <div>\n {{ detail.content }}\n </div>\n }\n @if (detail.media) {\n <div class=\"w-80%\">\n @for (item of detail.media; track item) {\n <div class=\"py-3\">\n <rolatech-thumbnail [src]=\"item.url\" size=\"small\"></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n </div>\n }\n }\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: ThumbnailComponent, selector: "rolatech-thumbnail", inputs: ["src", "size", "mode"] }] }); }
1526
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.1", type: CourseDetailsComponent, isStandalone: true, selector: "rolatech-course-details", inputs: { details: { classPropertyName: "details", publicName: "details", isSignal: true, isRequired: true, transformFunction: null }, instructor: { classPropertyName: "instructor", publicName: "instructor", isSignal: true, isRequired: false, transformFunction: null }, username: { classPropertyName: "username", publicName: "username", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div class=\"py-3\" id=\"details\">\n <div class=\"text-xl font-medium py-2\">\u8BE6\u60C5</div>\n @if (details()) {\n @for (detail of details(); track $index) {\n <div>\n @if (detail.title) {\n <div class=\"py-3 flex items-center gap-3\">\n <span class=\"h-4 w-1 bg-orange-500 inline-block\"></span>\n <span class=\"text-lg font-medium py-1\"> {{ detail.title }}</span>\n </div>\n }\n @if (detail.content) {\n <div>\n {{ detail.content }}\n </div>\n }\n @if (detail.media) {\n <div class=\"w-80%\">\n @for (item of detail.media; track item) {\n <div class=\"py-3\">\n <rolatech-thumbnail\n [src]=\"item.url\"\n size=\"small\"\n mode=\"full\"\n [width]=\"item.width\"\n [height]=\"item.height\"\n ></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n </div>\n }\n }\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: ThumbnailComponent, selector: "rolatech-thumbnail", inputs: ["src", "size", "mode", "width", "height"] }] }); }
1527
1527
  }
1528
1528
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.1", ngImport: i0, type: CourseDetailsComponent, decorators: [{
1529
1529
  type: Component,
1530
- args: [{ selector: 'rolatech-course-details', standalone: true, imports: [ThumbnailComponent], template: "<div class=\"py-3\" id=\"details\">\n <div class=\"text-xl font-medium py-2\">\u8BE6\u60C5</div>\n @if (details()) {\n @for (detail of details(); track $index) {\n <div>\n @if (detail.title) {\n <div class=\"py-3 flex items-center gap-3\">\n <span class=\"h-4 w-1 bg-orange-500 inline-block\"></span>\n <span class=\"text-lg font-medium py-1\"> {{ detail.title }}</span>\n </div>\n }\n @if (detail.content) {\n <div>\n {{ detail.content }}\n </div>\n }\n @if (detail.media) {\n <div class=\"w-80%\">\n @for (item of detail.media; track item) {\n <div class=\"py-3\">\n <rolatech-thumbnail [src]=\"item.url\" size=\"small\"></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n </div>\n }\n }\n</div>\n" }]
1530
+ args: [{ selector: 'rolatech-course-details', standalone: true, imports: [ThumbnailComponent], template: "<div class=\"py-3\" id=\"details\">\n <div class=\"text-xl font-medium py-2\">\u8BE6\u60C5</div>\n @if (details()) {\n @for (detail of details(); track $index) {\n <div>\n @if (detail.title) {\n <div class=\"py-3 flex items-center gap-3\">\n <span class=\"h-4 w-1 bg-orange-500 inline-block\"></span>\n <span class=\"text-lg font-medium py-1\"> {{ detail.title }}</span>\n </div>\n }\n @if (detail.content) {\n <div>\n {{ detail.content }}\n </div>\n }\n @if (detail.media) {\n <div class=\"w-80%\">\n @for (item of detail.media; track item) {\n <div class=\"py-3\">\n <rolatech-thumbnail\n [src]=\"item.url\"\n size=\"small\"\n mode=\"full\"\n [width]=\"item.width\"\n [height]=\"item.height\"\n ></rolatech-thumbnail>\n </div>\n }\n </div>\n }\n </div>\n }\n }\n</div>\n" }]
1531
1531
  }] });
1532
1532
 
1533
1533
  class CourseMediaOwnerRendererComponent {
@@ -1915,7 +1915,7 @@ const courseRoutes = [
1915
1915
  children: [
1916
1916
  {
1917
1917
  path: '',
1918
- loadComponent: () => import('./rolatech-angular-course-course-index.component-WXdJrvEn.mjs').then((x) => x.CourseIndexComponent),
1918
+ loadComponent: () => import('./rolatech-angular-course-course-index.component-C89fCBfR.mjs').then((x) => x.CourseIndexComponent),
1919
1919
  },
1920
1920
  {
1921
1921
  path: 'categories/:id',
@@ -3035,4 +3035,4 @@ const courseManageRoutes = [
3035
3035
  */
3036
3036
 
3037
3037
  export { CourseDetailsComponent as A, CourseMediaOwnerRendererComponent as B, CourseService as C, CourseSectionLectureVideoDialogComponent as D, ScheduleItemComponent as E, DetailItemComponent as F, PricingItemComponent as P, ScheduleDate as S, CategoryService as a, CourseItemComponent as b, courseRoutes as c, courseManageRoutes as d, CourseStatus as e, CourseRequestStatus as f, CourseType as g, CourseReviewStatus as h, CourseSectionLectureContentType as i, CoursePreviewComponent as j, CourseInfoComponent as k, CourseMediaComponent as l, CoursePricingComponent as m, CourseActionComponent as n, CourseScheduleComponent as o, provideAngularCourse as p, CourseSectionsComponent as q, CourseSectionItemComponent as r, CourseSectionLectureItemComponent as s, CourseSectionLectureVideoItemComponent as t, CoursePricingAddDialogComponent as u, CourseScheduleAddDialogComponent as v, CoursePricingDialogComponent as w, CourseScheduleDialogComponent as x, CourseDetailsDialogComponent as y, CourseEditDialogComponent as z };
3038
- //# sourceMappingURL=rolatech-angular-course-rolatech-angular-course-A8FqVnCf.mjs.map
3038
+ //# sourceMappingURL=rolatech-angular-course-rolatech-angular-course-DzJibnO6.mjs.map