xt-plugin-sample 0.4.1 → 0.4.3

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.
@@ -48,6 +48,7 @@ class SampleMoneyComponent extends XtCompositeComponent {
48
48
  });
49
49
  }
50
50
  ngOnInit() {
51
+ super.ngOnInit();
51
52
  // console.debug("XtMoneyComponent ngOnInit");
52
53
  const amountCtrl = this.manageFormControl('amount');
53
54
  // Make sure the display is updated whenever the value change in the formgroup
@@ -65,7 +66,7 @@ class SampleMoneyComponent extends XtCompositeComponent {
65
66
  });
66
67
  }
67
68
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: SampleMoneyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
68
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.4", type: SampleMoneyComponent, isStandalone: true, selector: "xt-sample-money", usesInheritance: true, ngImport: i0, template: "@if (isInForm() ) {\n @let cur = currency();\n <ng-container [formGroup]=\"formGroup()\">\n <xt-render-sub [context]=\"subContext('currency', 'sampleCurrency')\" />\n @if (cur != null) {\n <p-inputNumber mode=\"currency\" [currency]=\"cur\" formControlName=\"amount\" />\n } @else {\n <p-inputNumber mode=\"decimal\" formControlName=\"amount\" />\n }\n </ng-container>\n} @else {\n @let displayAmount = amount();\n @if (displayAmount) {\n {{ displayAmount | currency : currency() }}\n }\n}\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.CurrencyPipe, name: "currency" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: XtRenderSubComponent, selector: "xt-render-sub", inputs: ["context", "componentType"], outputs: ["outputs"] }, { kind: "ngmodule", type: InputNumberModule }, { kind: "component", type: i3.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled", "fluid"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
69
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.4", type: SampleMoneyComponent, isStandalone: true, selector: "xt-sample-money", usesInheritance: true, ngImport: i0, template: "@if (isInForm() ) {\n @let cur = currency();\n <ng-container [formGroup]=\"formGroup()\">\n <xt-render-sub [context]=\"subContext('currency', 'sampleCurrency')\" />\n @if (cur != null) {\n <p-inputNumber mode=\"currency\" [currency]=\"cur\" formControlName=\"amount\" />\n } @else {\n <p-inputNumber mode=\"decimal\" formControlName=\"amount\" />\n }\n </ng-container>\n} @else {\n @let displayAmount = amount();\n @if (displayAmount) {\n {{ displayAmount | currency : currency() }}\n }\n}\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.CurrencyPipe, name: "currency" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: XtRenderSubComponent, selector: "xt-render-sub", inputs: ["context", "componentType", "inputs"], outputs: ["outputs"] }, { kind: "ngmodule", type: InputNumberModule }, { kind: "component", type: i3.InputNumber, selector: "p-inputNumber, p-inputnumber, p-input-number", inputs: ["showButtons", "format", "buttonLayout", "inputId", "styleClass", "style", "placeholder", "size", "maxlength", "tabindex", "title", "ariaLabelledBy", "ariaLabel", "ariaRequired", "name", "required", "autocomplete", "min", "max", "incrementButtonClass", "decrementButtonClass", "incrementButtonIcon", "decrementButtonIcon", "readonly", "step", "allowEmpty", "locale", "localeMatcher", "mode", "currency", "currencyDisplay", "useGrouping", "variant", "minFractionDigits", "maxFractionDigits", "prefix", "suffix", "inputStyle", "inputStyleClass", "showClear", "autofocus", "disabled", "fluid"], outputs: ["onInput", "onFocus", "onBlur", "onKeyDown", "onClear"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
69
70
  }
70
71
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: SampleMoneyComponent, decorators: [{
71
72
  type: Component,
@@ -1 +1 @@
1
- {"version":3,"file":"xt-plugin-sample.mjs","sources":["../../../projects/sample/src/lib/hello/sample-hello.component.ts","../../../projects/sample/src/lib/hello/sample-hello.component.html","../../../projects/sample/src/lib/currency/sample-currency.component.ts","../../../projects/sample/src/lib/currency/sample-currency.component.html","../../../projects/sample/src/lib/money/sample-money.component.ts","../../../projects/sample/src/lib/money/sample-money.component.html","../../../projects/sample/src/lib/register.ts","../../../projects/sample/src/public-api.ts","../../../projects/sample/src/xt-plugin-sample.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport {XtSimpleComponent} from 'xt-components';\n\n@Component({\n selector: 'xt-sample-hello',\n standalone: true,\n imports: [],\n templateUrl: './sample-hello.component.html',\n styleUrl: './sample-hello.component.css',\n changeDetection: ChangeDetectionStrategy.OnPush\n\n})\nexport class SampleHelloComponent extends XtSimpleComponent<string>{\n\n}\n","<p>Hello {{getValue()}}</p>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { InputNumberModule } from 'primeng/inputnumber';\nimport { XtSimpleComponent } from 'xt-components';\nimport { CommonModule } from '@angular/common';\nimport { InputTextModule } from 'primeng/inputtext';\n\n@Component({\n selector: 'xt-sample-currency',\n standalone: true,\n imports: [CommonModule, InputNumberModule, ReactiveFormsModule, InputTextModule],\n templateUrl: './sample-currency.component.html',\n styleUrl: './sample-currency.component.css',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SampleCurrencyComponent extends XtSimpleComponent {\n}\n","@if (isInForm() ) {\n <ng-container [formGroup]=\"formGroup()\">\n <input type=\"text\" pInputText [name]=\"componentNameInForm ()\" [formControlName]=\"formControlName()\" />\n </ng-container>\n} @else {\n {{ context().displayValue() }}\n}\n","import { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n Injector,\n OnInit,\n runInInjectionContext,\n signal\n} from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { SampleMoney } from './sample-money.model';\nimport { XtCompositeComponent, XtRenderSubComponent } from 'xt-components';\nimport { InputNumberModule } from 'primeng/inputnumber';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\n@Component({\n selector: 'xt-sample-money',\n standalone: true,\n imports: [CommonModule, ReactiveFormsModule, XtRenderSubComponent, InputNumberModule],\n templateUrl: './sample-money.component.html',\n styleUrl: './sample-money.component.css',\n changeDetection: ChangeDetectionStrategy.OnPush\n\n})\nexport class SampleMoneyComponent extends XtCompositeComponent<SampleMoney> implements OnInit {\n injector = inject(Injector);\n\n // Force a recalculation of currency\n recalculate = signal<boolean>(true);\n\n currency= computed<string|undefined>( () => {\n // console.debug(\"Calculating currency in XtMoneyComponent\");\n this.recalculate();\n const value = this.context().value();\n if (value==null) return undefined;\n return value.currency;\n });\n\n amount = computed<number|undefined>(()=> {\n return this.context().displayValue()?.amount;\n })\n\n ngOnInit(): void {\n// console.debug(\"XtMoneyComponent ngOnInit\");\n const amountCtrl = this.manageFormControl('amount');\n\n // Make sure the display is updated whenever the value change in the formgroup\n runInInjectionContext(this.injector, () => {\n if (amountCtrl?.parent!=null) {\n amountCtrl.parent.valueChanges.pipe(takeUntilDestroyed()).subscribe({\n next: value => {\n // Is the value a known currency ?\n if (Intl.supportedValuesOf('currency').indexOf(value.currency) > -1) {\n this.recalculate.set(!this.recalculate());\n }\n }\n });\n }\n });\n }\n}\n","@if (isInForm() ) {\n @let cur = currency();\n <ng-container [formGroup]=\"formGroup()\">\n <xt-render-sub [context]=\"subContext('currency', 'sampleCurrency')\" />\n @if (cur != null) {\n <p-inputNumber mode=\"currency\" [currency]=\"cur\" formControlName=\"amount\" />\n } @else {\n <p-inputNumber mode=\"decimal\" formControlName=\"amount\" />\n }\n </ng-container>\n} @else {\n @let displayAmount = amount();\n @if (displayAmount) {\n {{ displayAmount | currency : currency() }}\n }\n}\n","import { XtResolverService } from 'xt-components';\nimport { SampleCurrencyComponent } from './currency/sample-currency.component';\nimport { SampleHelloComponent } from './hello/sample-hello.component';\nimport { SampleMoneyComponent } from './money/sample-money.component';\n\nexport function registerSamplePlugin (resolverService:XtResolverService):boolean {\n console.info ('Registering Plugin Sample');\n resolverService.registerPlugin ({\n name:'PluginSample',\n components: [\n {\n componentName:'SampleHello',\n componentClass:SampleHelloComponent,\n typesHandled: ['sampleHello']\n },\n {\n componentName:'SampleCurrency',\n componentClass:SampleCurrencyComponent,\n typesHandled: ['sampleCurrency']\n },\n {\n componentName:'SampleMoney',\n componentClass:SampleMoneyComponent,\n typesHandled: ['sampleMoney']\n },\n ],\n types:\n {\n sampleHello:'string',\n sampleCurrency:'string',\n sampleMoney:{\n amount: 'number',\n currency: 'sampleCurrency'\n }\n }\n });\n return true;\n}\n","/*\n * Public API Surface of sample-plugin\n */\nexport * from './lib/hello/sample-hello.component';\nexport * from './lib/currency/sample-currency.component';\nexport * from './lib/money/sample-money.component';\nexport * from './lib/money/sample-money.model';\nexport * from './lib/register';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2"],"mappings":"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"}
1
+ {"version":3,"file":"xt-plugin-sample.mjs","sources":["../../../projects/sample/src/lib/hello/sample-hello.component.ts","../../../projects/sample/src/lib/hello/sample-hello.component.html","../../../projects/sample/src/lib/currency/sample-currency.component.ts","../../../projects/sample/src/lib/currency/sample-currency.component.html","../../../projects/sample/src/lib/money/sample-money.component.ts","../../../projects/sample/src/lib/money/sample-money.component.html","../../../projects/sample/src/lib/register.ts","../../../projects/sample/src/public-api.ts","../../../projects/sample/src/xt-plugin-sample.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport {XtSimpleComponent} from 'xt-components';\n\n@Component({\n selector: 'xt-sample-hello',\n standalone: true,\n imports: [],\n templateUrl: './sample-hello.component.html',\n styleUrl: './sample-hello.component.css',\n changeDetection: ChangeDetectionStrategy.OnPush\n\n})\nexport class SampleHelloComponent extends XtSimpleComponent<string>{\n\n}\n","<p>Hello {{getValue()}}</p>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { InputNumberModule } from 'primeng/inputnumber';\nimport { XtSimpleComponent } from 'xt-components';\nimport { CommonModule } from '@angular/common';\nimport { InputTextModule } from 'primeng/inputtext';\n\n@Component({\n selector: 'xt-sample-currency',\n standalone: true,\n imports: [CommonModule, InputNumberModule, ReactiveFormsModule, InputTextModule],\n templateUrl: './sample-currency.component.html',\n styleUrl: './sample-currency.component.css',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SampleCurrencyComponent extends XtSimpleComponent {\n}\n","@if (isInForm() ) {\n <ng-container [formGroup]=\"formGroup()\">\n <input type=\"text\" pInputText [name]=\"componentNameInForm ()\" [formControlName]=\"formControlName()\" />\n </ng-container>\n} @else {\n {{ context().displayValue() }}\n}\n","import { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n Injector,\n OnInit,\n runInInjectionContext,\n signal\n} from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { SampleMoney } from './sample-money.model';\nimport { XtCompositeComponent, XtRenderSubComponent } from 'xt-components';\nimport { InputNumberModule } from 'primeng/inputnumber';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\n@Component({\n selector: 'xt-sample-money',\n standalone: true,\n imports: [CommonModule, ReactiveFormsModule, XtRenderSubComponent, InputNumberModule],\n templateUrl: './sample-money.component.html',\n styleUrl: './sample-money.component.css',\n changeDetection: ChangeDetectionStrategy.OnPush\n\n})\nexport class SampleMoneyComponent extends XtCompositeComponent<SampleMoney> implements OnInit {\n injector = inject(Injector);\n\n // Force a recalculation of currency\n recalculate = signal<boolean>(true);\n\n currency= computed<string|undefined>( () => {\n // console.debug(\"Calculating currency in XtMoneyComponent\");\n this.recalculate();\n const value = this.context().value();\n if (value==null) return undefined;\n return value.currency;\n });\n\n amount = computed<number|undefined>(()=> {\n return this.context().displayValue()?.amount;\n })\n\n override ngOnInit(): void {\n super.ngOnInit();\n// console.debug(\"XtMoneyComponent ngOnInit\");\n const amountCtrl = this.manageFormControl('amount');\n\n // Make sure the display is updated whenever the value change in the formgroup\n runInInjectionContext(this.injector, () => {\n if (amountCtrl?.parent!=null) {\n amountCtrl.parent.valueChanges.pipe(takeUntilDestroyed()).subscribe({\n next: value => {\n // Is the value a known currency ?\n if (Intl.supportedValuesOf('currency').indexOf(value.currency) > -1) {\n this.recalculate.set(!this.recalculate());\n }\n }\n });\n }\n });\n }\n}\n","@if (isInForm() ) {\n @let cur = currency();\n <ng-container [formGroup]=\"formGroup()\">\n <xt-render-sub [context]=\"subContext('currency', 'sampleCurrency')\" />\n @if (cur != null) {\n <p-inputNumber mode=\"currency\" [currency]=\"cur\" formControlName=\"amount\" />\n } @else {\n <p-inputNumber mode=\"decimal\" formControlName=\"amount\" />\n }\n </ng-container>\n} @else {\n @let displayAmount = amount();\n @if (displayAmount) {\n {{ displayAmount | currency : currency() }}\n }\n}\n","import { XtResolverService } from 'xt-components';\nimport { SampleCurrencyComponent } from './currency/sample-currency.component';\nimport { SampleHelloComponent } from './hello/sample-hello.component';\nimport { SampleMoneyComponent } from './money/sample-money.component';\n\nexport function registerSamplePlugin (resolverService:XtResolverService):boolean {\n console.info ('Registering Plugin Sample');\n resolverService.registerPlugin ({\n name:'PluginSample',\n components: [\n {\n componentName:'SampleHello',\n componentClass:SampleHelloComponent,\n typesHandled: ['sampleHello']\n },\n {\n componentName:'SampleCurrency',\n componentClass:SampleCurrencyComponent,\n typesHandled: ['sampleCurrency']\n },\n {\n componentName:'SampleMoney',\n componentClass:SampleMoneyComponent,\n typesHandled: ['sampleMoney']\n },\n ],\n types:\n {\n sampleHello:'string',\n sampleCurrency:'string',\n sampleMoney:{\n amount: 'number',\n currency: 'sampleCurrency'\n }\n }\n });\n return true;\n}\n","/*\n * Public API Surface of sample-plugin\n */\nexport * from './lib/hello/sample-hello.component';\nexport * from './lib/currency/sample-currency.component';\nexport * from './lib/money/sample-money.component';\nexport * from './lib/money/sample-money.model';\nexport * from './lib/register';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xt-plugin-sample",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": "^19.0.5",
6
6
  "@angular/common": "^19.0.5",