@xxmachina/components 0.0.0-PLACEHOLDER
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/extras/flow/index.d.ts +183 -0
- package/features/command/index.d.ts +67 -0
- package/features/query/index.d.ts +162 -0
- package/fesm2022/xxmachina-components-extras-flow.mjs +397 -0
- package/fesm2022/xxmachina-components-extras-flow.mjs.map +1 -0
- package/fesm2022/xxmachina-components-features-command.mjs +93 -0
- package/fesm2022/xxmachina-components-features-command.mjs.map +1 -0
- package/fesm2022/xxmachina-components-features-query.mjs +256 -0
- package/fesm2022/xxmachina-components-features-query.mjs.map +1 -0
- package/fesm2022/xxmachina-components-groups-command-form.mjs +73 -0
- package/fesm2022/xxmachina-components-groups-command-form.mjs.map +1 -0
- package/fesm2022/xxmachina-components-groups-query-form.mjs +215 -0
- package/fesm2022/xxmachina-components-groups-query-form.mjs.map +1 -0
- package/fesm2022/xxmachina-components-molecules-calendar-paginator.mjs +51 -0
- package/fesm2022/xxmachina-components-molecules-calendar-paginator.mjs.map +1 -0
- package/fesm2022/xxmachina-components-molecules-daily-cell.mjs +158 -0
- package/fesm2022/xxmachina-components-molecules-daily-cell.mjs.map +1 -0
- package/fesm2022/xxmachina-components-molecules-weekly-header.mjs +33 -0
- package/fesm2022/xxmachina-components-molecules-weekly-header.mjs.map +1 -0
- package/fesm2022/xxmachina-components-organisms-calendar-section.mjs +123 -0
- package/fesm2022/xxmachina-components-organisms-calendar-section.mjs.map +1 -0
- package/fesm2022/xxmachina-components-organisms-event-input-section.mjs +150 -0
- package/fesm2022/xxmachina-components-organisms-event-input-section.mjs.map +1 -0
- package/fesm2022/xxmachina-components-organisms-terminal-input-section.mjs +123 -0
- package/fesm2022/xxmachina-components-organisms-terminal-input-section.mjs.map +1 -0
- package/fesm2022/xxmachina-components-organisms-video-trimmer-section.mjs +93 -0
- package/fesm2022/xxmachina-components-organisms-video-trimmer-section.mjs.map +1 -0
- package/fesm2022/xxmachina-components-organisms-xterm.mjs +94 -0
- package/fesm2022/xxmachina-components-organisms-xterm.mjs.map +1 -0
- package/fesm2022/xxmachina-components-pages-command.mjs +482 -0
- package/fesm2022/xxmachina-components-pages-command.mjs.map +1 -0
- package/fesm2022/xxmachina-components-pages-query-v2.mjs +198 -0
- package/fesm2022/xxmachina-components-pages-query-v2.mjs.map +1 -0
- package/fesm2022/xxmachina-components-pages-query.mjs +782 -0
- package/fesm2022/xxmachina-components-pages-query.mjs.map +1 -0
- package/fesm2022/xxmachina-components-pages-thread.mjs +176 -0
- package/fesm2022/xxmachina-components-pages-thread.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-commands-command.routes-CSwIdXZg.mjs +19 -0
- package/fesm2022/xxmachina-components-routes-commands-command.routes-CSwIdXZg.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-commands-pages.routes-j2xVop4W.mjs +10 -0
- package/fesm2022/xxmachina-components-routes-commands-pages.routes-j2xVop4W.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-commands.mjs +104 -0
- package/fesm2022/xxmachina-components-routes-commands.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-pages.mjs +62 -0
- package/fesm2022/xxmachina-components-routes-pages.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-preloading.mjs +22 -0
- package/fesm2022/xxmachina-components-routes-preloading.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-queries-pages.routes-CfrglCIL.mjs +9 -0
- package/fesm2022/xxmachina-components-routes-queries-pages.routes-CfrglCIL.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-queries.mjs +147 -0
- package/fesm2022/xxmachina-components-routes-queries.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-query-pages.routes-CxTbOJDQ.mjs +17 -0
- package/fesm2022/xxmachina-components-routes-query-pages.routes-CxTbOJDQ.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-query.mjs +42 -0
- package/fesm2022/xxmachina-components-routes-query.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-resources-pages.routes-CzjQOxwT.mjs +9 -0
- package/fesm2022/xxmachina-components-routes-resources-pages.routes-CzjQOxwT.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-resources-resource.routes-C5KpB3KM.mjs +131 -0
- package/fesm2022/xxmachina-components-routes-resources-resource.routes-C5KpB3KM.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-resources.mjs +130 -0
- package/fesm2022/xxmachina-components-routes-resources.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-side-chat.mjs +19 -0
- package/fesm2022/xxmachina-components-routes-side-chat.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-side.mjs +18 -0
- package/fesm2022/xxmachina-components-routes-side.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-transformer.mjs +99 -0
- package/fesm2022/xxmachina-components-routes-transformer.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-transformers-pages.routes-02pVsNas.mjs +9 -0
- package/fesm2022/xxmachina-components-routes-transformers-pages.routes-02pVsNas.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-transformers.mjs +75 -0
- package/fesm2022/xxmachina-components-routes-transformers.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes.mjs +35 -0
- package/fesm2022/xxmachina-components-routes.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-app.mjs +30 -0
- package/fesm2022/xxmachina-components-services-app.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-assistant.mjs +43 -0
- package/fesm2022/xxmachina-components-services-assistant.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-calendar.mjs +27 -0
- package/fesm2022/xxmachina-components-services-calendar.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-command.mjs +138 -0
- package/fesm2022/xxmachina-components-services-command.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-context.mjs +23 -0
- package/fesm2022/xxmachina-components-services-context.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-contract.mjs +29 -0
- package/fesm2022/xxmachina-components-services-contract.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-debug.mjs +48 -0
- package/fesm2022/xxmachina-components-services-debug.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-forms-query.mjs +70 -0
- package/fesm2022/xxmachina-components-services-forms-query.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-forms-schedule.mjs +78 -0
- package/fesm2022/xxmachina-components-services-forms-schedule.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-forms-variables.mjs +34 -0
- package/fesm2022/xxmachina-components-services-forms-variables.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-graphql.mjs +34 -0
- package/fesm2022/xxmachina-components-services-graphql.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-invoice.mjs +130 -0
- package/fesm2022/xxmachina-components-services-invoice.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-json-schema.mjs +61 -0
- package/fesm2022/xxmachina-components-services-json-schema.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-link.mjs +31 -0
- package/fesm2022/xxmachina-components-services-link.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-message.mjs +50 -0
- package/fesm2022/xxmachina-components-services-message.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-openai.mjs +113 -0
- package/fesm2022/xxmachina-components-services-openai.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-openapi.mjs +40 -0
- package/fesm2022/xxmachina-components-services-openapi.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-order.mjs +37 -0
- package/fesm2022/xxmachina-components-services-order.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-partner.mjs +42 -0
- package/fesm2022/xxmachina-components-services-partner.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-query.mjs +66 -0
- package/fesm2022/xxmachina-components-services-query.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-recording.mjs +71 -0
- package/fesm2022/xxmachina-components-services-recording.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-schedule.mjs +53 -0
- package/fesm2022/xxmachina-components-services-schedule.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-thread.mjs +125 -0
- package/fesm2022/xxmachina-components-services-thread.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-transformer.mjs +31 -0
- package/fesm2022/xxmachina-components-services-transformer.mjs.map +1 -0
- package/fesm2022/xxmachina-components-services-youtube.mjs +28 -0
- package/fesm2022/xxmachina-components-services-youtube.mjs.map +1 -0
- package/fesm2022/xxmachina-components-templates-agent.mjs +549 -0
- package/fesm2022/xxmachina-components-templates-agent.mjs.map +1 -0
- package/fesm2022/xxmachina-components-templates-background.mjs +309 -0
- package/fesm2022/xxmachina-components-templates-background.mjs.map +1 -0
- package/fesm2022/xxmachina-components-templates-invoice-iframe.mjs +48 -0
- package/fesm2022/xxmachina-components-templates-invoice-iframe.mjs.map +1 -0
- package/fesm2022/xxmachina-components-templates-scheduler.mjs +178 -0
- package/fesm2022/xxmachina-components-templates-scheduler.mjs.map +1 -0
- package/fesm2022/xxmachina-components-templates-video.mjs +101 -0
- package/fesm2022/xxmachina-components-templates-video.mjs.map +1 -0
- package/fesm2022/xxmachina-components-validators-query.mjs +38 -0
- package/fesm2022/xxmachina-components-validators-query.mjs.map +1 -0
- package/fesm2022/xxmachina-components.mjs +278 -0
- package/fesm2022/xxmachina-components.mjs.map +1 -0
- package/groups/command-form/index.d.ts +13 -0
- package/groups/query-form/index.d.ts +56 -0
- package/index.d.ts +71 -0
- package/molecules/calendar-paginator/index.d.ts +14 -0
- package/molecules/daily-cell/index.d.ts +35 -0
- package/molecules/weekly-header/index.d.ts +11 -0
- package/organisms/calendar-section/index.d.ts +25 -0
- package/organisms/event-input-section/index.d.ts +45 -0
- package/organisms/terminal-input-section/index.d.ts +37 -0
- package/organisms/video-trimmer-section/index.d.ts +30 -0
- package/organisms/xterm/index.d.ts +23 -0
- package/package.json +258 -0
- package/pages/command/index.d.ts +217 -0
- package/pages/query/index.d.ts +292 -0
- package/pages/query-v2/index.d.ts +68 -0
- package/pages/thread/index.d.ts +109 -0
- package/routes/commands/index.d.ts +5 -0
- package/routes/index.d.ts +5 -0
- package/routes/pages/index.d.ts +5 -0
- package/routes/preloading/index.d.ts +11 -0
- package/routes/queries/index.d.ts +5 -0
- package/routes/query/index.d.ts +5 -0
- package/routes/resources/index.d.ts +5 -0
- package/routes/side/chat/index.d.ts +5 -0
- package/routes/side/index.d.ts +5 -0
- package/routes/transformer/index.d.ts +5 -0
- package/routes/transformers/index.d.ts +5 -0
- package/services/app/index.d.ts +17 -0
- package/services/assistant/index.d.ts +20 -0
- package/services/calendar/index.d.ts +13 -0
- package/services/command/index.d.ts +54 -0
- package/services/context/index.d.ts +10 -0
- package/services/contract/index.d.ts +11 -0
- package/services/debug/index.d.ts +14 -0
- package/services/forms/query/index.d.ts +46 -0
- package/services/forms/schedule/index.d.ts +42 -0
- package/services/forms/variables/index.d.ts +12 -0
- package/services/graphql/index.d.ts +20 -0
- package/services/invoice/index.d.ts +19 -0
- package/services/json-schema/index.d.ts +15 -0
- package/services/link/index.d.ts +13 -0
- package/services/message/index.d.ts +23 -0
- package/services/openai/index.d.ts +35 -0
- package/services/openapi/index.d.ts +17 -0
- package/services/order/index.d.ts +13 -0
- package/services/partner/index.d.ts +11 -0
- package/services/query/index.d.ts +42 -0
- package/services/recording/index.d.ts +20 -0
- package/services/schedule/index.d.ts +26 -0
- package/services/thread/index.d.ts +30 -0
- package/services/transformer/index.d.ts +19 -0
- package/services/youtube/index.d.ts +10 -0
- package/templates/agent/index.d.ts +54 -0
- package/templates/background/index.d.ts +44 -0
- package/templates/invoice-iframe/index.d.ts +13 -0
- package/templates/scheduler/index.d.ts +31 -0
- package/templates/video/index.d.ts +36 -0
- package/validators/query/index.d.ts +7 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, computed, inject, ElementRef, Directive, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import * as i1 from '@angular/material/slider';
|
|
4
|
+
import { MatSliderModule } from '@angular/material/slider';
|
|
5
|
+
import * as i2 from '@angular/forms';
|
|
6
|
+
import { FormBuilder, ReactiveFormsModule } from '@angular/forms';
|
|
7
|
+
import { formatSeconds } from '@ng-atomic/common/utils';
|
|
8
|
+
import { NgAtomicComponent } from '@ng-atomic/core';
|
|
9
|
+
import { fromEvent, startWith, map } from 'rxjs';
|
|
10
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
11
|
+
|
|
12
|
+
class VideoTrimmerSectionOrganismStore {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.images = input([]);
|
|
15
|
+
// blobをcomputedでimageのsrcに変換する
|
|
16
|
+
this.imageSrcList = computed(() => (this.images() ?? []).map(blob => URL.createObjectURL(blob)));
|
|
17
|
+
this.control = input(inject(FormBuilder).group({
|
|
18
|
+
duration: [0],
|
|
19
|
+
start: [0],
|
|
20
|
+
end: [100],
|
|
21
|
+
}));
|
|
22
|
+
this.el = inject(ElementRef);
|
|
23
|
+
this.width$ = fromEvent(window, 'resize').pipe(startWith(null), map(() => this.el.nativeElement.clientWidth));
|
|
24
|
+
this.width = toSignal(this.width$);
|
|
25
|
+
this.frameSize = computed(() => Math.round(this.width() / 100));
|
|
26
|
+
this.frames = computed(() => {
|
|
27
|
+
// frameSizeの数だけimageSrcListを分割する
|
|
28
|
+
const frameSize = this.frameSize();
|
|
29
|
+
const images = this.imageSrcList().map(src => [...Array(this.frameSize())].map(() => src)).flat();
|
|
30
|
+
console.debug('images:', images.length);
|
|
31
|
+
// imagesを均等な感覚で12枚に絞る
|
|
32
|
+
const interval = Math.floor(images.length / this.frameSize());
|
|
33
|
+
return images.filter((_, i) => i % interval === 0);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: VideoTrimmerSectionOrganismStore, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
37
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.5", type: VideoTrimmerSectionOrganismStore, isStandalone: true, inputs: { images: { classPropertyName: "images", publicName: "images", isSignal: true, isRequired: false, transformFunction: null }, control: { classPropertyName: "control", publicName: "control", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: VideoTrimmerSectionOrganismStore, decorators: [{
|
|
40
|
+
type: Directive,
|
|
41
|
+
args: [{ standalone: true }]
|
|
42
|
+
}] });
|
|
43
|
+
class VideoTrimmerSectionOrganism extends NgAtomicComponent {
|
|
44
|
+
constructor() {
|
|
45
|
+
super(...arguments);
|
|
46
|
+
this.store = inject(VideoTrimmerSectionOrganismStore);
|
|
47
|
+
this.formatLabel = (value) => {
|
|
48
|
+
const seconds = Math.round(value / 100 * this.store.control().value.duration);
|
|
49
|
+
return formatSeconds(seconds);
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: VideoTrimmerSectionOrganism, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
53
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.5", type: VideoTrimmerSectionOrganism, isStandalone: true, selector: "organisms-video-trimmer-section", usesInheritance: true, hostDirectives: [{ directive: VideoTrimmerSectionOrganismStore, inputs: ["images", "images", "control", "control"] }], ngImport: i0, template: `
|
|
54
|
+
<div class="frames">
|
|
55
|
+
@for (image of store.frames(); track image) {
|
|
56
|
+
<img [style.width] [src]="image" />
|
|
57
|
+
}
|
|
58
|
+
</div>
|
|
59
|
+
<mat-slider min="0" max="100" discrete [displayWith]="formatLabel">
|
|
60
|
+
<input [formControl]="store.control().get(['start'])" matSliderStartThumb>
|
|
61
|
+
<input [formControl]="store.control().get(['end'])" matSliderEndThumb>
|
|
62
|
+
</mat-slider>
|
|
63
|
+
`, isInline: true, styles: [":host{display:block}:host{position:relative;display:grid;width:100%;height:80px}:host .frames{grid-template-columns:repeat(auto-fill,100px);overflow:hidden;overflow-x:auto;white-space:nowrap}:host .frames img{width:100px}:host mat-slider{top:-16px;position:absolute;width:100%}\n"], dependencies: [{ kind: "ngmodule", type: MatSliderModule }, { kind: "component", type: i1.MatSlider, selector: "mat-slider", inputs: ["disabled", "discrete", "showTickMarks", "min", "color", "disableRipple", "max", "step", "displayWith"], exportAs: ["matSlider"] }, { kind: "directive", type: i1.MatSliderRangeThumb, selector: "input[matSliderStartThumb], input[matSliderEndThumb]", exportAs: ["matSliderRangeThumb"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
64
|
+
}
|
|
65
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: VideoTrimmerSectionOrganism, decorators: [{
|
|
66
|
+
type: Component,
|
|
67
|
+
args: [{ selector: 'organisms-video-trimmer-section', standalone: true, imports: [
|
|
68
|
+
MatSliderModule,
|
|
69
|
+
ReactiveFormsModule,
|
|
70
|
+
], template: `
|
|
71
|
+
<div class="frames">
|
|
72
|
+
@for (image of store.frames(); track image) {
|
|
73
|
+
<img [style.width] [src]="image" />
|
|
74
|
+
}
|
|
75
|
+
</div>
|
|
76
|
+
<mat-slider min="0" max="100" discrete [displayWith]="formatLabel">
|
|
77
|
+
<input [formControl]="store.control().get(['start'])" matSliderStartThumb>
|
|
78
|
+
<input [formControl]="store.control().get(['end'])" matSliderEndThumb>
|
|
79
|
+
</mat-slider>
|
|
80
|
+
`, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
|
|
81
|
+
{
|
|
82
|
+
directive: VideoTrimmerSectionOrganismStore,
|
|
83
|
+
inputs: ['images', 'control'],
|
|
84
|
+
}
|
|
85
|
+
], styles: [":host{display:block}:host{position:relative;display:grid;width:100%;height:80px}:host .frames{grid-template-columns:repeat(auto-fill,100px);overflow:hidden;overflow-x:auto;white-space:nowrap}:host .frames img{width:100px}:host mat-slider{top:-16px;position:absolute;width:100%}\n"] }]
|
|
86
|
+
}] });
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Generated bundle index. Do not edit.
|
|
90
|
+
*/
|
|
91
|
+
|
|
92
|
+
export { VideoTrimmerSectionOrganism, VideoTrimmerSectionOrganismStore };
|
|
93
|
+
//# sourceMappingURL=xxmachina-components-organisms-video-trimmer-section.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xxmachina-components-organisms-video-trimmer-section.mjs","sources":["../tmp-esm2022/organisms/video-trimmer-section/video-trimmer-section.organism.js","../tmp-esm2022/organisms/video-trimmer-section/xxmachina-components-organisms-video-trimmer-section.js"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, ElementRef, computed, inject, input } from '@angular/core';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { FormBuilder, ReactiveFormsModule } from '@angular/forms';\nimport { formatSeconds } from '@ng-atomic/common/utils';\nimport { NgAtomicComponent } from '@ng-atomic/core';\nimport { fromEvent, map, startWith } from 'rxjs';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/material/slider\";\nimport * as i2 from \"@angular/forms\";\nexport class VideoTrimmerSectionOrganismStore {\n constructor() {\n this.images = input([]);\n // blobをcomputedでimageのsrcに変換する\n this.imageSrcList = computed(() => (this.images() ?? []).map(blob => URL.createObjectURL(blob)));\n this.control = input(inject(FormBuilder).group({\n duration: [0],\n start: [0],\n end: [100],\n }));\n this.el = inject(ElementRef);\n this.width$ = fromEvent(window, 'resize').pipe(startWith(null), map(() => this.el.nativeElement.clientWidth));\n this.width = toSignal(this.width$);\n this.frameSize = computed(() => Math.round(this.width() / 100));\n this.frames = computed(() => {\n // frameSizeの数だけimageSrcListを分割する\n const frameSize = this.frameSize();\n const images = this.imageSrcList().map(src => [...Array(this.frameSize())].map(() => src)).flat();\n console.debug('images:', images.length);\n // imagesを均等な感覚で12枚に絞る\n const interval = Math.floor(images.length / this.frameSize());\n return images.filter((_, i) => i % interval === 0);\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: VideoTrimmerSectionOrganismStore, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.5\", type: VideoTrimmerSectionOrganismStore, isStandalone: true, inputs: { images: { classPropertyName: \"images\", publicName: \"images\", isSignal: true, isRequired: false, transformFunction: null }, control: { classPropertyName: \"control\", publicName: \"control\", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: VideoTrimmerSectionOrganismStore, decorators: [{\n type: Directive,\n args: [{ standalone: true }]\n }] });\nexport class VideoTrimmerSectionOrganism extends NgAtomicComponent {\n constructor() {\n super(...arguments);\n this.store = inject(VideoTrimmerSectionOrganismStore);\n this.formatLabel = (value) => {\n const seconds = Math.round(value / 100 * this.store.control().value.duration);\n return formatSeconds(seconds);\n };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: VideoTrimmerSectionOrganism, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.5\", type: VideoTrimmerSectionOrganism, isStandalone: true, selector: \"organisms-video-trimmer-section\", usesInheritance: true, hostDirectives: [{ directive: VideoTrimmerSectionOrganismStore, inputs: [\"images\", \"images\", \"control\", \"control\"] }], ngImport: i0, template: `\n <div class=\"frames\">\n @for (image of store.frames(); track image) {\n <img [style.width] [src]=\"image\" />\n }\n </div>\n <mat-slider min=\"0\" max=\"100\" discrete [displayWith]=\"formatLabel\">\n <input [formControl]=\"store.control().get(['start'])\" matSliderStartThumb>\n <input [formControl]=\"store.control().get(['end'])\" matSliderEndThumb>\n </mat-slider>\n `, isInline: true, styles: [\":host{display:block}:host{position:relative;display:grid;width:100%;height:80px}:host .frames{grid-template-columns:repeat(auto-fill,100px);overflow:hidden;overflow-x:auto;white-space:nowrap}:host .frames img{width:100px}:host mat-slider{top:-16px;position:absolute;width:100%}\\n\"], dependencies: [{ kind: \"ngmodule\", type: MatSliderModule }, { kind: \"component\", type: i1.MatSlider, selector: \"mat-slider\", inputs: [\"disabled\", \"discrete\", \"showTickMarks\", \"min\", \"color\", \"disableRipple\", \"max\", \"step\", \"displayWith\"], exportAs: [\"matSlider\"] }, { kind: \"directive\", type: i1.MatSliderRangeThumb, selector: \"input[matSliderStartThumb], input[matSliderEndThumb]\", exportAs: [\"matSliderRangeThumb\"] }, { kind: \"ngmodule\", type: ReactiveFormsModule }, { kind: \"directive\", type: i2.DefaultValueAccessor, selector: \"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]\" }, { kind: \"directive\", type: i2.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i2.FormControlDirective, selector: \"[formControl]\", inputs: [\"formControl\", \"disabled\", \"ngModel\"], outputs: [\"ngModelChange\"], exportAs: [\"ngForm\"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: VideoTrimmerSectionOrganism, decorators: [{\n type: Component,\n args: [{ selector: 'organisms-video-trimmer-section', standalone: true, imports: [\n MatSliderModule,\n ReactiveFormsModule,\n ], template: `\n <div class=\"frames\">\n @for (image of store.frames(); track image) {\n <img [style.width] [src]=\"image\" />\n }\n </div>\n <mat-slider min=\"0\" max=\"100\" discrete [displayWith]=\"formatLabel\">\n <input [formControl]=\"store.control().get(['start'])\" matSliderStartThumb>\n <input [formControl]=\"store.control().get(['end'])\" matSliderEndThumb>\n </mat-slider>\n `, changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [\n {\n directive: VideoTrimmerSectionOrganismStore,\n inputs: ['images', 'control'],\n }\n ], styles: [\":host{display:block}:host{position:relative;display:grid;width:100%;height:80px}:host .frames{grid-template-columns:repeat(auto-fill,100px);overflow:hidden;overflow-x:auto;white-space:nowrap}:host .frames img{width:100px}:host mat-slider{top:-16px;position:absolute;width:100%}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlkZW8tdHJpbW1lci1zZWN0aW9uLm9yZ2FuaXNtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQHh4bWFjaGluYS9jb21wb25lbnRzL3NyYy9saWIvb3JnYW5pc21zL3ZpZGVvLXRyaW1tZXItc2VjdGlvbi92aWRlby10cmltbWVyLXNlY3Rpb24ub3JnYW5pc20udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFHdEQsTUFBTSxPQUFPLGdDQUFnQztJQUQ3QztRQUVXLFdBQU0sR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDcEMsK0JBQStCO1FBQ3RCLGlCQUFZLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTVGLFlBQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssQ0FBQztZQUNqRCxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDYixLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDVixHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUM7U0FDWCxDQUFDLENBQUMsQ0FBQztRQUVLLE9BQUUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDeEIsV0FBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUNoRCxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQ2YsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUM3QyxDQUFDO1FBQ08sVUFBSyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFOUIsY0FBUyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTNELFdBQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzlCLGlDQUFpQztZQUNqQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNsRyxPQUFPLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDeEMsc0JBQXNCO1lBQ3RCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztZQUM5RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsUUFBUSxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO0tBQ0o7OEdBN0JZLGdDQUFnQztrR0FBaEMsZ0NBQWdDOzsyRkFBaEMsZ0NBQWdDO2tCQUQ1QyxTQUFTO21CQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTs7QUEyRC9CLE1BQU0sT0FBTywyQkFBNEIsU0FBUSxpQkFBaUI7SUEzQmxFOztRQTRCWSxVQUFLLEdBQUcsTUFBTSxDQUFDLGdDQUFnQyxDQUFDLENBQUM7UUFFM0QsZ0JBQVcsR0FBRyxDQUFDLEtBQWEsRUFBVSxFQUFFO1lBQ3RDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5RSxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUE7S0FDRjs4R0FQWSwyQkFBMkI7a0dBQTNCLDJCQUEyQix3SEExRDNCLGdDQUFnQyxpRkFzQ2pDOzs7Ozs7Ozs7O0dBVVQsZ1dBYkMsZUFBZSxzWUFDZixtQkFBbUI7OzJGQXNCViwyQkFBMkI7a0JBM0J2QyxTQUFTOytCQUNFLGlDQUFpQyxjQUMvQixJQUFJLFdBQ1A7d0JBQ1AsZUFBZTt3QkFDZixtQkFBbUI7cUJBQ3BCLFlBQ1M7Ozs7Ozs7Ozs7R0FVVCxtQkFFZ0IsdUJBQXVCLENBQUMsTUFBTSxrQkFDL0I7d0JBQ2Q7NEJBQ0UsU0FBUyxFQUFFLGdDQUFnQzs0QkFDM0MsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQzt5QkFDOUI7cUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGNvbXB1dGVkLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRTbGlkZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbGlkZXInO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBmb3JtYXRTZWNvbmRzIH0gZnJvbSAnQG5nLWF0b21pYy9jb21tb24vdXRpbHMnO1xuaW1wb3J0IHsgTmdBdG9taWNDb21wb25lbnQgfSBmcm9tICdAbmctYXRvbWljL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbkBEaXJlY3RpdmUoeyBzdGFuZGFsb25lOiB0cnVlIH0pXG5leHBvcnQgY2xhc3MgVmlkZW9UcmltbWVyU2VjdGlvbk9yZ2FuaXNtU3RvcmUge1xuICByZWFkb25seSBpbWFnZXMgPSBpbnB1dDxCbG9iW10+KFtdKTtcbiAgLy8gYmxvYuOCkmNvbXB1dGVk44GnaW1hZ2Xjga5zcmPjgavlpInmj5vjgZnjgotcbiAgcmVhZG9ubHkgaW1hZ2VTcmNMaXN0ID0gY29tcHV0ZWQoKCkgPT4gKHRoaXMuaW1hZ2VzKCkgPz8gW10pLm1hcChibG9iID0+IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYikpKTtcblxuICByZWFkb25seSBjb250cm9sID0gaW5wdXQoaW5qZWN0KEZvcm1CdWlsZGVyKS5ncm91cCh7XG4gICAgZHVyYXRpb246IFswXSxcbiAgICBzdGFydDogWzBdLFxuICAgIGVuZDogWzEwMF0sXG4gIH0pKTtcblxuICByZWFkb25seSBlbCA9IGluamVjdChFbGVtZW50UmVmKTtcbiAgcmVhZG9ubHkgd2lkdGgkID0gZnJvbUV2ZW50KHdpbmRvdywgJ3Jlc2l6ZScpLnBpcGUoXG4gICAgc3RhcnRXaXRoKG51bGwpLFxuICAgIG1hcCgoKSA9PiB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGgpLFxuICApO1xuICByZWFkb25seSB3aWR0aCA9IHRvU2lnbmFsKHRoaXMud2lkdGgkKTtcblxuICByZWFkb25seSBmcmFtZVNpemUgPSBjb21wdXRlZCgoKSA9PiBNYXRoLnJvdW5kKHRoaXMud2lkdGgoKSAvIDEwMCkpO1xuXG4gIHJlYWRvbmx5IGZyYW1lcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAvLyBmcmFtZVNpemXjga7mlbDjgaDjgZFpbWFnZVNyY0xpc3TjgpLliIblibLjgZnjgotcbiAgICBjb25zdCBmcmFtZVNpemUgPSB0aGlzLmZyYW1lU2l6ZSgpO1xuICAgIGNvbnN0IGltYWdlcyA9IHRoaXMuaW1hZ2VTcmNMaXN0KCkubWFwKHNyYyA9PiBbLi4uQXJyYXkodGhpcy5mcmFtZVNpemUoKSldLm1hcCgoKSA9PiBzcmMpKS5mbGF0KCk7XG4gICAgY29uc29sZS5kZWJ1ZygnaW1hZ2VzOicsIGltYWdlcy5sZW5ndGgpO1xuICAgIC8vIGltYWdlc+OCkuWdh+etieOBquaEn+immuOBpzEy5p6a44Gr57We44KLXG4gICAgY29uc3QgaW50ZXJ2YWwgPSBNYXRoLmZsb29yKGltYWdlcy5sZW5ndGggLyB0aGlzLmZyYW1lU2l6ZSgpKTtcbiAgICByZXR1cm4gaW1hZ2VzLmZpbHRlcigoXywgaSkgPT4gaSAlIGludGVydmFsID09PSAwKTtcbiAgfSk7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ29yZ2FuaXNtcy12aWRlby10cmltbWVyLXNlY3Rpb24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgTWF0U2xpZGVyTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImZyYW1lc1wiPlxuICAgICAgQGZvciAoaW1hZ2Ugb2Ygc3RvcmUuZnJhbWVzKCk7IHRyYWNrIGltYWdlKSB7XG4gICAgICAgIDxpbWcgW3N0eWxlLndpZHRoXSBbc3JjXT1cImltYWdlXCIgLz5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgICA8bWF0LXNsaWRlciBtaW49XCIwXCIgbWF4PVwiMTAwXCIgZGlzY3JldGUgW2Rpc3BsYXlXaXRoXT1cImZvcm1hdExhYmVsXCI+XG4gICAgICA8aW5wdXQgW2Zvcm1Db250cm9sXT1cInN0b3JlLmNvbnRyb2woKS5nZXQoWydzdGFydCddKVwiIG1hdFNsaWRlclN0YXJ0VGh1bWI+XG4gICAgICA8aW5wdXQgW2Zvcm1Db250cm9sXT1cInN0b3JlLmNvbnRyb2woKS5nZXQoWydlbmQnXSlcIiBtYXRTbGlkZXJFbmRUaHVtYj5cbiAgICA8L21hdC1zbGlkZXI+XG4gIGAsXG4gIHN0eWxlVXJsczogWycuL3ZpZGVvLXRyaW1tZXItc2VjdGlvbi5vcmdhbmlzbS5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0RGlyZWN0aXZlczogW1xuICAgIHtcbiAgICAgIGRpcmVjdGl2ZTogVmlkZW9UcmltbWVyU2VjdGlvbk9yZ2FuaXNtU3RvcmUsXG4gICAgICBpbnB1dHM6IFsnaW1hZ2VzJywgJ2NvbnRyb2wnXSxcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgVmlkZW9UcmltbWVyU2VjdGlvbk9yZ2FuaXNtIGV4dGVuZHMgTmdBdG9taWNDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgc3RvcmUgPSBpbmplY3QoVmlkZW9UcmltbWVyU2VjdGlvbk9yZ2FuaXNtU3RvcmUpO1xuXG4gIGZvcm1hdExhYmVsID0gKHZhbHVlOiBudW1iZXIpOiBzdHJpbmcgPT4ge1xuICAgIGNvbnN0IHNlY29uZHMgPSBNYXRoLnJvdW5kKHZhbHVlIC8gMTAwICogdGhpcy5zdG9yZS5jb250cm9sKCkudmFsdWUuZHVyYXRpb24pO1xuICAgIHJldHVybiBmb3JtYXRTZWNvbmRzKHNlY29uZHMpO1xuICB9XG59XG5cblxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHhtYWNoaW5hLWNvbXBvbmVudHMtb3JnYW5pc21zLXZpZGVvLXRyaW1tZXItc2VjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0B4eG1hY2hpbmEvY29tcG9uZW50cy9zcmMvbGliL29yZ2FuaXNtcy92aWRlby10cmltbWVyLXNlY3Rpb24veHhtYWNoaW5hLWNvbXBvbmVudHMtb3JnYW5pc21zLXZpZGVvLXRyaW1tZXItc2VjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { viewChild, output, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import { Terminal } from '@xterm/xterm';
|
|
4
|
+
import { FitAddon } from '@xterm/addon-fit';
|
|
5
|
+
|
|
6
|
+
class XtermOrganism {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.container = viewChild.required('container');
|
|
9
|
+
this.terminalReady = output();
|
|
10
|
+
}
|
|
11
|
+
ngAfterViewInit() {
|
|
12
|
+
this.terminal = new Terminal({
|
|
13
|
+
theme: {
|
|
14
|
+
background: '#0a0a0a',
|
|
15
|
+
foreground: '#66d9ef',
|
|
16
|
+
cursor: '#ff79c6',
|
|
17
|
+
cyan: '#8be9fd',
|
|
18
|
+
brightCyan: '#50fa7b',
|
|
19
|
+
green: '#50fa7b',
|
|
20
|
+
brightGreen: '#50fa7b',
|
|
21
|
+
magenta: '#ff79c6',
|
|
22
|
+
brightMagenta: '#ff79c6',
|
|
23
|
+
yellow: '#f1fa8c',
|
|
24
|
+
brightYellow: '#ffb86c',
|
|
25
|
+
red: '#ff5555',
|
|
26
|
+
brightRed: '#ff5555'
|
|
27
|
+
},
|
|
28
|
+
scrollback: 1000,
|
|
29
|
+
fontSize: 12,
|
|
30
|
+
lineHeight: 1.2,
|
|
31
|
+
allowTransparency: false,
|
|
32
|
+
disableStdin: true,
|
|
33
|
+
cursorBlink: false,
|
|
34
|
+
cursorStyle: 'block',
|
|
35
|
+
convertEol: true,
|
|
36
|
+
rows: 24
|
|
37
|
+
});
|
|
38
|
+
this.fitAddon = new FitAddon();
|
|
39
|
+
this.terminal.loadAddon(this.fitAddon);
|
|
40
|
+
const containerElement = this.container().nativeElement;
|
|
41
|
+
this.terminal.open(containerElement);
|
|
42
|
+
// 初期化後の処理
|
|
43
|
+
setTimeout(() => {
|
|
44
|
+
this.fitAddon.fit();
|
|
45
|
+
this.terminalReady.emit(this.terminal);
|
|
46
|
+
// ResizeObserverでサイズ変更を監視
|
|
47
|
+
this.resizeObserver = new ResizeObserver(() => {
|
|
48
|
+
try {
|
|
49
|
+
this.fitAddon.fit();
|
|
50
|
+
}
|
|
51
|
+
catch (e) {
|
|
52
|
+
console.warn('Failed to fit terminal:', e);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
this.resizeObserver.observe(containerElement);
|
|
56
|
+
}, 100);
|
|
57
|
+
}
|
|
58
|
+
ngOnDestroy() {
|
|
59
|
+
this.resizeObserver?.disconnect();
|
|
60
|
+
this.terminal?.dispose();
|
|
61
|
+
}
|
|
62
|
+
// Public API
|
|
63
|
+
write(text) {
|
|
64
|
+
this.terminal?.write(text);
|
|
65
|
+
}
|
|
66
|
+
writeln(text) {
|
|
67
|
+
this.terminal?.writeln(text);
|
|
68
|
+
}
|
|
69
|
+
clear() {
|
|
70
|
+
this.terminal?.clear();
|
|
71
|
+
}
|
|
72
|
+
scrollToBottom() {
|
|
73
|
+
this.terminal?.scrollToBottom();
|
|
74
|
+
}
|
|
75
|
+
scrollToTop() {
|
|
76
|
+
this.terminal?.scrollToTop();
|
|
77
|
+
}
|
|
78
|
+
scrollLines(lines) {
|
|
79
|
+
this.terminal?.scrollLines(lines);
|
|
80
|
+
}
|
|
81
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: XtermOrganism, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
82
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.0.5", type: XtermOrganism, isStandalone: true, selector: "organisms-xterm", outputs: { terminalReady: "terminalReady" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, isSignal: true }], ngImport: i0, template: `<div #container class="xterm-wrapper"></div>`, isInline: true, styles: ["", "@import\"https://unpkg.com/@xterm/xterm@5.5.0/css/xterm.css\";:host{display:block;width:100%;height:100%}.xterm-wrapper{width:100%;height:100%;background:#0a0a0a;position:relative;overflow:hidden}.xterm-wrapper ::ng-deep .xterm-cursor-layer{display:none!important}.xterm-wrapper ::ng-deep .xterm-cursor,.xterm-wrapper ::ng-deep .xterm-cursor-outline{opacity:0!important}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
83
|
+
}
|
|
84
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: XtermOrganism, decorators: [{
|
|
85
|
+
type: Component,
|
|
86
|
+
args: [{ selector: 'organisms-xterm', standalone: true, imports: [], template: `<div #container class="xterm-wrapper"></div>`, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@import\"https://unpkg.com/@xterm/xterm@5.5.0/css/xterm.css\";:host{display:block;width:100%;height:100%}.xterm-wrapper{width:100%;height:100%;background:#0a0a0a;position:relative;overflow:hidden}.xterm-wrapper ::ng-deep .xterm-cursor-layer{display:none!important}.xterm-wrapper ::ng-deep .xterm-cursor,.xterm-wrapper ::ng-deep .xterm-cursor-outline{opacity:0!important}\n"] }]
|
|
87
|
+
}] });
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Generated bundle index. Do not edit.
|
|
91
|
+
*/
|
|
92
|
+
|
|
93
|
+
export { XtermOrganism };
|
|
94
|
+
//# sourceMappingURL=xxmachina-components-organisms-xterm.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xxmachina-components-organisms-xterm.mjs","sources":["../tmp-esm2022/organisms/xterm/xterm.organism.js","../tmp-esm2022/organisms/xterm/xxmachina-components-organisms-xterm.js"],"sourcesContent":["import { Component, ChangeDetectionStrategy, viewChild, output } from '@angular/core';\nimport { Terminal } from '@xterm/xterm';\nimport { FitAddon } from '@xterm/addon-fit';\nimport * as i0 from \"@angular/core\";\nexport class XtermOrganism {\n constructor() {\n this.container = viewChild.required('container');\n this.terminalReady = output();\n }\n ngAfterViewInit() {\n this.terminal = new Terminal({\n theme: {\n background: '#0a0a0a',\n foreground: '#66d9ef',\n cursor: '#ff79c6',\n cyan: '#8be9fd',\n brightCyan: '#50fa7b',\n green: '#50fa7b',\n brightGreen: '#50fa7b',\n magenta: '#ff79c6',\n brightMagenta: '#ff79c6',\n yellow: '#f1fa8c',\n brightYellow: '#ffb86c',\n red: '#ff5555',\n brightRed: '#ff5555'\n },\n scrollback: 1000,\n fontSize: 12,\n lineHeight: 1.2,\n allowTransparency: false,\n disableStdin: true,\n cursorBlink: false,\n cursorStyle: 'block',\n convertEol: true,\n rows: 24\n });\n this.fitAddon = new FitAddon();\n this.terminal.loadAddon(this.fitAddon);\n const containerElement = this.container().nativeElement;\n this.terminal.open(containerElement);\n // 初期化後の処理\n setTimeout(() => {\n this.fitAddon.fit();\n this.terminalReady.emit(this.terminal);\n // ResizeObserverでサイズ変更を監視\n this.resizeObserver = new ResizeObserver(() => {\n try {\n this.fitAddon.fit();\n }\n catch (e) {\n console.warn('Failed to fit terminal:', e);\n }\n });\n this.resizeObserver.observe(containerElement);\n }, 100);\n }\n ngOnDestroy() {\n this.resizeObserver?.disconnect();\n this.terminal?.dispose();\n }\n // Public API\n write(text) {\n this.terminal?.write(text);\n }\n writeln(text) {\n this.terminal?.writeln(text);\n }\n clear() {\n this.terminal?.clear();\n }\n scrollToBottom() {\n this.terminal?.scrollToBottom();\n }\n scrollToTop() {\n this.terminal?.scrollToTop();\n }\n scrollLines(lines) {\n this.terminal?.scrollLines(lines);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: XtermOrganism, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.2.0\", version: \"20.0.5\", type: XtermOrganism, isStandalone: true, selector: \"organisms-xterm\", outputs: { terminalReady: \"terminalReady\" }, viewQueries: [{ propertyName: \"container\", first: true, predicate: [\"container\"], descendants: true, isSignal: true }], ngImport: i0, template: `<div #container class=\"xterm-wrapper\"></div>`, isInline: true, styles: [\"\", \"@import\\\"https://unpkg.com/@xterm/xterm@5.5.0/css/xterm.css\\\";:host{display:block;width:100%;height:100%}.xterm-wrapper{width:100%;height:100%;background:#0a0a0a;position:relative;overflow:hidden}.xterm-wrapper ::ng-deep .xterm-cursor-layer{display:none!important}.xterm-wrapper ::ng-deep .xterm-cursor,.xterm-wrapper ::ng-deep .xterm-cursor-outline{opacity:0!important}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: XtermOrganism, decorators: [{\n type: Component,\n args: [{ selector: 'organisms-xterm', standalone: true, imports: [], template: `<div #container class=\"xterm-wrapper\"></div>`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [\"@import\\\"https://unpkg.com/@xterm/xterm@5.5.0/css/xterm.css\\\";:host{display:block;width:100%;height:100%}.xterm-wrapper{width:100%;height:100%;background:#0a0a0a;position:relative;overflow:hidden}.xterm-wrapper ::ng-deep .xterm-cursor-layer{display:none!important}.xterm-wrapper ::ng-deep .xterm-cursor,.xterm-wrapper ::ng-deep .xterm-cursor-outline{opacity:0!important}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHRlcm0ub3JnYW5pc20uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AeHhtYWNoaW5hL2NvbXBvbmVudHMvc3JjL2xpYi9vcmdhbmlzbXMveHRlcm0veHRlcm0ub3JnYW5pc20udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBd0MsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFVNUMsTUFBTSxPQUFPLGFBQWE7SUFSMUI7UUFTVyxjQUFTLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBNkIsV0FBVyxDQUFDLENBQUM7UUFDeEUsa0JBQWEsR0FBRyxNQUFNLEVBQVksQ0FBQztLQXNGN0M7SUFoRkMsZUFBZTtRQUNiLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxRQUFRLENBQUM7WUFDM0IsS0FBSyxFQUFFO2dCQUNMLFVBQVUsRUFBRSxTQUFTO2dCQUNyQixVQUFVLEVBQUUsU0FBUztnQkFDckIsTUFBTSxFQUFFLFNBQVM7Z0JBQ2pCLElBQUksRUFBRSxTQUFTO2dCQUNmLFVBQVUsRUFBRSxTQUFTO2dCQUNyQixLQUFLLEVBQUUsU0FBUztnQkFDaEIsV0FBVyxFQUFFLFNBQVM7Z0JBQ3RCLE9BQU8sRUFBRSxTQUFTO2dCQUNsQixhQUFhLEVBQUUsU0FBUztnQkFDeEIsTUFBTSxFQUFFLFNBQVM7Z0JBQ2pCLFlBQVksRUFBRSxTQUFTO2dCQUN2QixHQUFHLEVBQUUsU0FBUztnQkFDZCxTQUFTLEVBQUUsU0FBUzthQUNyQjtZQUNELFVBQVUsRUFBRSxJQUFJO1lBQ2hCLFFBQVEsRUFBRSxFQUFFO1lBQ1osVUFBVSxFQUFFLEdBQUc7WUFDZixpQkFBaUIsRUFBRSxLQUFLO1lBQ3hCLFlBQVksRUFBRSxJQUFJO1lBQ2xCLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLFdBQVcsRUFBRSxPQUFPO1lBQ3BCLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLElBQUksRUFBRSxFQUFFO1NBQ1QsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV2QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFDeEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUVyQyxVQUFVO1FBQ1YsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRXZDLDBCQUEwQjtZQUMxQixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksY0FBYyxDQUFDLEdBQUcsRUFBRTtnQkFDNUMsSUFBSSxDQUFDO29CQUNILElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUM7Z0JBQ3RCLENBQUM7Z0JBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztvQkFDWCxPQUFPLENBQUMsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUM3QyxDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2hELENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNWLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGNBQWMsRUFBRSxVQUFVLEVBQUUsQ0FBQztRQUNsQyxJQUFJLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxhQUFhO0lBQ04sS0FBSyxDQUFDLElBQVk7UUFDdkIsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZO1FBQ3pCLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLENBQUMsUUFBUSxFQUFFLGNBQWMsRUFBRSxDQUFDO0lBQ2xDLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVNLFdBQVcsQ0FBQyxLQUFhO1FBQzlCLElBQUksQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7OEdBdkZVLGFBQWE7a0dBQWIsYUFBYSxnUEFKZCw4Q0FBOEM7OzJGQUk3QyxhQUFhO2tCQVJ6QixTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUCxFQUFFLFlBQ0QsOENBQThDLG1CQUV2Qyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCB2aWV3Q2hpbGQsIG91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGVybWluYWwgfSBmcm9tICdAeHRlcm0veHRlcm0nO1xuaW1wb3J0IHsgRml0QWRkb24gfSBmcm9tICdAeHRlcm0vYWRkb24tZml0JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnb3JnYW5pc21zLXh0ZXJtJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW10sXG4gIHRlbXBsYXRlOiBgPGRpdiAjY29udGFpbmVyIGNsYXNzPVwieHRlcm0td3JhcHBlclwiPjwvZGl2PmAsXG4gIHN0eWxlVXJsczogWycuL3h0ZXJtLm9yZ2FuaXNtLmNzcycsICcuL3h0ZXJtLm9yZ2FuaXNtLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgWHRlcm1PcmdhbmlzbSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIHJlYWRvbmx5IGNvbnRhaW5lciA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50Pj4oJ2NvbnRhaW5lcicpO1xuICByZWFkb25seSB0ZXJtaW5hbFJlYWR5ID0gb3V0cHV0PFRlcm1pbmFsPigpO1xuXG4gIHByaXZhdGUgdGVybWluYWwhOiBUZXJtaW5hbDtcbiAgcHJpdmF0ZSBmaXRBZGRvbiE6IEZpdEFkZG9uO1xuICBwcml2YXRlIHJlc2l6ZU9ic2VydmVyPzogUmVzaXplT2JzZXJ2ZXI7XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMudGVybWluYWwgPSBuZXcgVGVybWluYWwoe1xuICAgICAgdGhlbWU6IHtcbiAgICAgICAgYmFja2dyb3VuZDogJyMwYTBhMGEnLFxuICAgICAgICBmb3JlZ3JvdW5kOiAnIzY2ZDllZicsXG4gICAgICAgIGN1cnNvcjogJyNmZjc5YzYnLFxuICAgICAgICBjeWFuOiAnIzhiZTlmZCcsXG4gICAgICAgIGJyaWdodEN5YW46ICcjNTBmYTdiJyxcbiAgICAgICAgZ3JlZW46ICcjNTBmYTdiJyxcbiAgICAgICAgYnJpZ2h0R3JlZW46ICcjNTBmYTdiJyxcbiAgICAgICAgbWFnZW50YTogJyNmZjc5YzYnLFxuICAgICAgICBicmlnaHRNYWdlbnRhOiAnI2ZmNzljNicsXG4gICAgICAgIHllbGxvdzogJyNmMWZhOGMnLFxuICAgICAgICBicmlnaHRZZWxsb3c6ICcjZmZiODZjJyxcbiAgICAgICAgcmVkOiAnI2ZmNTU1NScsXG4gICAgICAgIGJyaWdodFJlZDogJyNmZjU1NTUnXG4gICAgICB9LFxuICAgICAgc2Nyb2xsYmFjazogMTAwMCxcbiAgICAgIGZvbnRTaXplOiAxMixcbiAgICAgIGxpbmVIZWlnaHQ6IDEuMixcbiAgICAgIGFsbG93VHJhbnNwYXJlbmN5OiBmYWxzZSxcbiAgICAgIGRpc2FibGVTdGRpbjogdHJ1ZSxcbiAgICAgIGN1cnNvckJsaW5rOiBmYWxzZSxcbiAgICAgIGN1cnNvclN0eWxlOiAnYmxvY2snLFxuICAgICAgY29udmVydEVvbDogdHJ1ZSxcbiAgICAgIHJvd3M6IDI0XG4gICAgfSk7XG5cbiAgICB0aGlzLmZpdEFkZG9uID0gbmV3IEZpdEFkZG9uKCk7XG4gICAgdGhpcy50ZXJtaW5hbC5sb2FkQWRkb24odGhpcy5maXRBZGRvbik7XG4gICAgXG4gICAgY29uc3QgY29udGFpbmVyRWxlbWVudCA9IHRoaXMuY29udGFpbmVyKCkubmF0aXZlRWxlbWVudDtcbiAgICB0aGlzLnRlcm1pbmFsLm9wZW4oY29udGFpbmVyRWxlbWVudCk7XG4gICAgXG4gICAgLy8g5Yid5pyf5YyW5b6M44Gu5Yem55CGXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmZpdEFkZG9uLmZpdCgpO1xuICAgICAgdGhpcy50ZXJtaW5hbFJlYWR5LmVtaXQodGhpcy50ZXJtaW5hbCk7XG4gICAgICBcbiAgICAgIC8vIFJlc2l6ZU9ic2VydmVy44Gn44K144Kk44K65aSJ5pu044KS55uj6KaWXG4gICAgICB0aGlzLnJlc2l6ZU9ic2VydmVyID0gbmV3IFJlc2l6ZU9ic2VydmVyKCgpID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICB0aGlzLmZpdEFkZG9uLmZpdCgpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKCdGYWlsZWQgdG8gZml0IHRlcm1pbmFsOicsIGUpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIHRoaXMucmVzaXplT2JzZXJ2ZXIub2JzZXJ2ZShjb250YWluZXJFbGVtZW50KTtcbiAgICB9LCAxMDApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5yZXNpemVPYnNlcnZlcj8uZGlzY29ubmVjdCgpO1xuICAgIHRoaXMudGVybWluYWw/LmRpc3Bvc2UoKTtcbiAgfVxuXG4gIC8vIFB1YmxpYyBBUElcbiAgcHVibGljIHdyaXRlKHRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudGVybWluYWw/LndyaXRlKHRleHQpO1xuICB9XG5cbiAgcHVibGljIHdyaXRlbG4odGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy50ZXJtaW5hbD8ud3JpdGVsbih0ZXh0KTtcbiAgfVxuXG4gIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICB0aGlzLnRlcm1pbmFsPy5jbGVhcigpO1xuICB9XG5cbiAgcHVibGljIHNjcm9sbFRvQm90dG9tKCk6IHZvaWQge1xuICAgIHRoaXMudGVybWluYWw/LnNjcm9sbFRvQm90dG9tKCk7XG4gIH1cblxuICBwdWJsaWMgc2Nyb2xsVG9Ub3AoKTogdm9pZCB7XG4gICAgdGhpcy50ZXJtaW5hbD8uc2Nyb2xsVG9Ub3AoKTtcbiAgfVxuXG4gIHB1YmxpYyBzY3JvbGxMaW5lcyhsaW5lczogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy50ZXJtaW5hbD8uc2Nyb2xsTGluZXMobGluZXMpO1xuICB9XG59Il19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHhtYWNoaW5hLWNvbXBvbmVudHMtb3JnYW5pc21zLXh0ZXJtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQHh4bWFjaGluYS9jb21wb25lbnRzL3NyYy9saWIvb3JnYW5pc21zL3h0ZXJtL3h4bWFjaGluYS1jb21wb25lbnRzLW9yZ2FuaXNtcy14dGVybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|