diff --git a/demo/src/app/app.component.ts b/demo/src/app/app.component.ts index 5ac51189e..fb9933c26 100644 --- a/demo/src/app/app.component.ts +++ b/demo/src/app/app.component.ts @@ -1,5 +1,5 @@ import { Component, HostBinding } from "@angular/core"; -import { SuiPopupConfig } from "ng2-semantic-ui"; +import { SuiPopupConfig } from "../../../src"; @Component({ selector: "demo-root", diff --git a/demo/src/app/app.module.ts b/demo/src/app/app.module.ts index d178e329a..f8106d6e1 100644 --- a/demo/src/app/app.module.ts +++ b/demo/src/app/app.module.ts @@ -2,7 +2,7 @@ import { BrowserModule } from "@angular/platform-browser"; import { NgModule } from "@angular/core"; import { CommonModule } from "@angular/common"; import { FormsModule } from "@angular/forms"; -import { SuiSidebarModule, SuiPopupModule } from "ng2-semantic-ui"; +import { SuiSidebarModule, SuiPopupModule } from "../../../src"; import { DemoRoutingModule } from "./app.routing"; import { DemoComponentsModule } from "./components/demo-components.module"; diff --git a/demo/src/app/components/demo-components.module.ts b/demo/src/app/components/demo-components.module.ts index 16c71e199..aa606a31f 100644 --- a/demo/src/app/components/demo-components.module.ts +++ b/demo/src/app/components/demo-components.module.ts @@ -1,7 +1,7 @@ import { NgModule } from "@angular/core"; import { CommonModule } from "@angular/common"; import { RouterModule } from "@angular/router"; -import { SuiCollapseModule, SuiPopupModule } from "ng2-semantic-ui"; +import { SuiCollapseModule, SuiPopupModule } from "../../../../src"; import { ApiComponent } from "./api/api.component"; import { CodeblockComponent } from "./codeblock/codeblock.component"; diff --git a/demo/src/app/modals/alert.modal.ts b/demo/src/app/modals/alert.modal.ts index fdd0c17e9..7734bab3a 100644 --- a/demo/src/app/modals/alert.modal.ts +++ b/demo/src/app/modals/alert.modal.ts @@ -1,5 +1,5 @@ import { Component } from "@angular/core"; -import { SuiModal, ComponentModalConfig, ModalSize } from "ng2-semantic-ui"; +import { Modal, ComponentModalConfig, ModalSize } from "../../../../src"; interface IAlertModalContext { message:string; @@ -19,7 +19,7 @@ interface IAlertModalContext { ` }) export class AlertModalComponent { - constructor(public modal:SuiModal) {} + constructor(public modal:Modal) {} } export class AlertModal extends ComponentModalConfig { diff --git a/demo/src/app/modals/confirm.modal.ts b/demo/src/app/modals/confirm.modal.ts index 8d11a5f28..09f97c277 100644 --- a/demo/src/app/modals/confirm.modal.ts +++ b/demo/src/app/modals/confirm.modal.ts @@ -1,5 +1,5 @@ import { Component } from "@angular/core"; -import { SuiModal, ComponentModalConfig, ModalSize } from "ng2-semantic-ui"; +import { ComponentModalConfig, ModalSize, Modal } from "../../../../src"; interface IConfirmModalContext { question:string; @@ -20,7 +20,7 @@ interface IConfirmModalContext { ` }) export class ConfirmModalComponent { - constructor(public modal:SuiModal) {} + constructor(public modal:Modal) {} } export class ConfirmModal extends ComponentModalConfig { diff --git a/demo/src/app/modals/demo-modals.module.ts b/demo/src/app/modals/demo-modals.module.ts index 80abf6dd5..4d2b89282 100644 --- a/demo/src/app/modals/demo-modals.module.ts +++ b/demo/src/app/modals/demo-modals.module.ts @@ -1,6 +1,6 @@ import { NgModule } from "@angular/core"; import { CommonModule } from "@angular/common"; -import { SuiModalModule } from "ng2-semantic-ui"; +import { SuiModalModule } from "../../../../src"; import { AlertModalComponent } from "./alert.modal"; import { ConfirmModalComponent } from "./confirm.modal"; diff --git a/demo/src/app/pages/behaviors/localization/localization.page.ts b/demo/src/app/pages/behaviors/localization/localization.page.ts index 070ce38ac..06b62f6c8 100644 --- a/demo/src/app/pages/behaviors/localization/localization.page.ts +++ b/demo/src/app/pages/behaviors/localization/localization.page.ts @@ -1,6 +1,6 @@ import { Component, OnDestroy } from "@angular/core"; -import { SuiLocalizationService } from "ng2-semantic-ui"; -import locales from "ng2-semantic-ui/locales"; +import { SuiLocalizationService } from "../../../../../../src"; +import locales from "../../../../../../src/behaviors/localization/locales"; const exampleTemplate = `
diff --git a/demo/src/app/pages/demo-pages.module.ts b/demo/src/app/pages/demo-pages.module.ts index 1c6efb18d..c51c2cafd 100644 --- a/demo/src/app/pages/demo-pages.module.ts +++ b/demo/src/app/pages/demo-pages.module.ts @@ -2,7 +2,7 @@ import { NgModule } from "@angular/core"; import { CommonModule } from "@angular/common"; import { FormsModule, ReactiveFormsModule } from "@angular/forms"; import { RouterModule } from "@angular/router"; -import { SuiModule } from "ng2-semantic-ui"; +import { SuiModule } from "../../../../src"; import { DemoComponentsModule } from "../components/demo-components.module"; import { GettingStartedPage } from "./getting-started/getting-started.page"; diff --git a/demo/src/app/pages/modules/datepicker/datepicker.page.ts b/demo/src/app/pages/modules/datepicker/datepicker.page.ts index cde1ad3c2..da7fb7138 100644 --- a/demo/src/app/pages/modules/datepicker/datepicker.page.ts +++ b/demo/src/app/pages/modules/datepicker/datepicker.page.ts @@ -1,6 +1,6 @@ import { Component } from "@angular/core"; import { ApiDefinition } from "../../../components/api/api.component"; -import { DatepickerMode } from "ng2-semantic-ui"; +import { DatepickerMode } from "../../../../../../src"; const exampleStandardTemplate = `
diff --git a/demo/src/app/pages/modules/modal/modal.page.ts b/demo/src/app/pages/modules/modal/modal.page.ts index deb0d4613..ba236fe1b 100644 --- a/demo/src/app/pages/modules/modal/modal.page.ts +++ b/demo/src/app/pages/modules/modal/modal.page.ts @@ -2,8 +2,8 @@ import { Component, ViewChild } from "@angular/core"; import { ApiDefinition } from "../../../components/api/api.component"; import { SuiModalService, ModalTemplate, TemplateModalConfig, ComponentModalConfig, - ModalSize, SuiModal -} from "ng2-semantic-ui"; + ModalSize, Modal +} from "../../../../../../src"; import { AlertModal } from "../../../modals/alert.modal"; const exampleTemplateModalTemplate = ` @@ -266,7 +266,7 @@ interface IConfirmModalContext { template: exampleComponentModalTemplate }) export class ConfirmModalComponent { - constructor(public modal:SuiModal) {} + constructor(public modal:Modal) {} } export class ConfirmModal extends ComponentModalConfig { diff --git a/demo/src/app/pages/modules/popup/popup.page.ts b/demo/src/app/pages/modules/popup/popup.page.ts index 00fb1454e..93640bf82 100644 --- a/demo/src/app/pages/modules/popup/popup.page.ts +++ b/demo/src/app/pages/modules/popup/popup.page.ts @@ -1,6 +1,6 @@ import { Component, Input } from "@angular/core"; import { ApiDefinition } from "../../../components/api/api.component"; -import { SuiPopupConfig } from "ng2-semantic-ui"; +import { SuiPopupConfig } from "../../../../../../src"; const exampleStandardTemplate = `
- + + -` +`, + styles: [` + :host .remove.icon.deselect { + position: absolute; + width: auto; + height: auto; + line-height: 1.21428571em; + top: .78571429em; + right: 1em; + margin: -.78571429em; + opacity: .6; + font-size: 1.07142857em; + padding: .6em; + -webkit-transition: opacity .1s ease; + transition: opacity .1s ease; + z-index: 3; + } + :host .remove.icon.deselect.larger { + padding: .91666667em; + font-size: .85714286em; + } + :host .remove.icon.deselect:hover { + opacity: 1; + } + `] }) export class SuiSelect extends SuiSelectBase implements ICustomValueAccessorHost { public selectedOption?:T; @@ -57,12 +82,25 @@ export class SuiSelect extends SuiSelectBase implements ICustomValue this._placeholder = placeholder; } + @Input() + public isClearable:boolean; + constructor(element:ElementRef, localizationService:SuiLocalizationService) { super(element, localizationService); + this.isClearable = false; this.selectedOptionChange = new EventEmitter(); } + public onRemoveClick(e:HandledEvent):void { + if (!e.eventHandled) { + e.eventHandled = true; + this.selectedOption = undefined; + this.selectedOptionChange.emit(undefined); + this._renderedOptions.forEach(o => o.isActive = false); + } + } + protected optionsUpdateHook():void { if (!this._writtenOption && this.selectedOption) { // We need to check the option still exists.