{"version":3,"file":"xxmachina-components-templates-scheduler.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/templates/scheduler/scheduler.template.ts","../../../../../packages/@xxmachina/components/src/lib/templates/scheduler/xxmachina-components-templates-scheduler.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Input, Pipe } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormGroup } from '@angular/forms';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { TextInputSectionOrganism } from '@ng-atomic/components/organisms/text-input-section';\nimport { TextareaSectionOrganism } from '@ng-atomic/components/organisms/textarea-section';\nimport { DateInputSectionOrganism } from '@ng-atomic/components/organisms/date-input-section';\nimport { TimeRangeInputSectionOrganism } from '@ng-atomic/components/organisms/time-range-input-section';\nimport { DateRangeInputSectionOrganism } from '@ng-atomic/components/organisms/date-range-input-section';\nimport { NavigatorOrganism } from '@ng-atomic/components/organisms/navigator';\nimport { ScrollFrame } from '@ng-atomic/components/frames/scroll';\nimport { TabsFrame } from '@ng-atomic/components/frames/tabs';\nimport { ActionButtonsSectionOrganism } from '@ng-atomic/components/organisms/action-buttons-section';\nimport { Effect, NgAtomicComponent } from '@ng-atomic/core';\nimport { EventInputSectionOrganism } from '@xxmachina/components/organisms/event-input-section';\n\nenum ActionId {\n  ADD_EVENTS = 'ADD_EVENTS',\n  COPY_MESSAGE = 'COPY_MESSAGE',\n  DELETE_EVENT = '[@xxmachina/scheduler/components/templates/scheduler] Delete Event',\n  FIX_SCHEDULE = '[@xxmachina/scheduler/components/templates/scheduler] Fix Schedule',\n}\n\n\n@Component({\n  selector: 'templates-scheduler',\n  standalone: true,\n  imports: [\n    CommonModule,\n    TextInputSectionOrganism,\n    TextareaSectionOrganism,\n    DateInputSectionOrganism,\n    TimeRangeInputSectionOrganism,\n    DateRangeInputSectionOrganism,\n    ActionButtonsSectionOrganism,\n    EventInputSectionOrganism,\n    NavigatorOrganism,\n    ScrollFrame,\n    MatTabsModule,\n    TabsFrame,\n  ],\n  template: `\n  <frames-scroll>\n    <organisms-navigator top>日程調整</organisms-navigator>\n    <frames-tabs content>\n      <ng-template #tab>\n        <frames-scroll>\n          <organisms-text-input-section\n            [label]=\"'予定名'\"\n            [control]=\"form.get(['title'])\"\n            [autoComplete]=\"autoCompleteTitle\"\n            [actions]=\"addEventsActions\"\n            (action)=\"dispatch($event)\"\n          top/>\n          <div content>\n            <organisms-event-input-section\n              *ngFor=\"let control of form.get(['events'])?.controls; let i = index\"\n              [label]=\"'候補(' + (i + 1) + ')'\"\n              [control]=\"control\"\n              (action)=\"dispatch($event, undefined, i)\"\n            />\n          </div>\n          <organisms-textarea-section bottom\n            [rows]=\"5\"\n            [label]=\"'メッセージ文'\"\n            [control]=\"form.get(['message'])\"\n            [actions]=\"submitActions\"\n            (action)=\"dispatch($event)\"\n          />\n        </frames-scroll>\n      </ng-template>\n      <ng-template #tab>\n        <frames-scroll>\n          <div top>\n            <organisms-date-range-input-section\n              [label]=\"'日付'\"\n              [control]=\"form.get(['dateRange'])\"\n            />\n            <organisms-time-range-input-section\n              [label]=\"'時間'\"\n              [control]=\"form.get(['timeRange'])\"\n            />\n          </div>\n        </frames-scroll>\n      </ng-template>\n    </frames-tabs>\n  </frames-scroll>\n  `,\n  styleUrls: ['./scheduler.template.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  host: { class: 'template' },\n})\nexport class SchedulerTemplate extends NgAtomicComponent {\n  static readonly ActionId = ActionId;\n\n  @Input() protected form!: FormGroup;\n  @Input() protected autoCompleteTitle!: string[];\n\n  protected addEventsActions= [\n    { id: ActionId.ADD_EVENTS, name: '候補日をピックアップ', icon: 'add' },\n  ];\n\n  protected submitActions = [\n    { id: ActionId.COPY_MESSAGE, name: 'コピー', icon: 'content_copy'},\n  ];\n\n  @Effect(EventInputSectionOrganism.ActionId.DELETE_BUTTON_CLICK, {accessor: (action: any) => action.meta.componentId})\n  onDeleteButtonClicked(index: any) {\n    this.dispatch({id: ActionId.DELETE_EVENT, payload: index});\n  }\n\n  @Effect(EventInputSectionOrganism.ActionId.FIX_BUTTON_CLICK, {accessor: (action: any) => action.meta.componentId})\n  onFixButtonClicked(index: any) {\n    this.dispatch({id: ActionId.FIX_SCHEDULE, payload: index});\n  }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}