
import { NgModule }	from '@angular/core'

// Router
import { productRouting } from './rte.product'

// Shared Modules
import { SharedModule } from '@k-core/modules/shared/mod.shared'

// Material
import { MatDialogModule, MAT_DIALOG_DEFAULT_OPTIONS } from '@angular/material'
import { AddedToCartDialogComponent } from '@k-core/modules/shared/components/added-to-cart-dialog/cmp.added-to-cart-dialog'

// Components
import { AddToCartComponent }   from '@k-core/modules/product/components/add-to-cart/component.add-to-cart'
import { AttributeComponent }   from '@k-core/modules/product/components/attribute/cmp.attribute'
import { AttributesComponent }  from '@k-core/modules/product/components/attributes/cmp.attributes'
import { MediaComponent }       from '@k-core/modules/product/components/media/cmp.media'
import { OtherItemsComponent }  from '@k-core/modules/product/components/other-items/cmp.other-items'
import { ConfigurableComponent } from '@k-core/modules/product/components/configurable/cmp.configurable'

// Views
import { ProductView } from './partial/view.product'

// Services


@NgModule({
	imports: [ 
		SharedModule,
		productRouting,
		MatDialogModule
	],
	exports: [
	],
	declarations: [
		// Components
		AddToCartComponent,
		AttributeComponent,
		AttributesComponent,
		MediaComponent,
		OtherItemsComponent,
		ConfigurableComponent,


		// Views
		ProductView

	],
	entryComponents: [
		AddedToCartDialogComponent
	],
	providers: [
		{provide: MAT_DIALOG_DEFAULT_OPTIONS, useValue: {hasBackdrop: true}}

	]
})

export class ProductModule {}
