@ks-digital/designsystem-angular 0.0.1-alpha.7 → 0.0.1-alpha.70

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.
Files changed (104) hide show
  1. package/README.md +28 -11
  2. package/__internals/README.md +3 -0
  3. package/alert/README.md +3 -0
  4. package/breadcrumbs/README.md +3 -0
  5. package/button/README.md +3 -0
  6. package/card/README.md +3 -0
  7. package/details/README.md +3 -0
  8. package/dialog/README.md +3 -0
  9. package/dropdown/README.md +3 -0
  10. package/error-summary/README.md +3 -0
  11. package/fesm2022/ks-digital-designsystem-angular-__internals.mjs +82 -0
  12. package/fesm2022/ks-digital-designsystem-angular-__internals.mjs.map +1 -0
  13. package/fesm2022/ks-digital-designsystem-angular-alert.mjs +34 -0
  14. package/fesm2022/ks-digital-designsystem-angular-alert.mjs.map +1 -0
  15. package/fesm2022/ks-digital-designsystem-angular-breadcrumbs.mjs +51 -0
  16. package/fesm2022/ks-digital-designsystem-angular-breadcrumbs.mjs.map +1 -0
  17. package/fesm2022/ks-digital-designsystem-angular-button.mjs +74 -0
  18. package/fesm2022/ks-digital-designsystem-angular-button.mjs.map +1 -0
  19. package/fesm2022/ks-digital-designsystem-angular-card.mjs +86 -0
  20. package/fesm2022/ks-digital-designsystem-angular-card.mjs.map +1 -0
  21. package/fesm2022/ks-digital-designsystem-angular-chip.mjs +43 -0
  22. package/fesm2022/ks-digital-designsystem-angular-chip.mjs.map +1 -0
  23. package/fesm2022/ks-digital-designsystem-angular-details.mjs +64 -0
  24. package/fesm2022/ks-digital-designsystem-angular-details.mjs.map +1 -0
  25. package/fesm2022/ks-digital-designsystem-angular-dialog.mjs +48 -0
  26. package/fesm2022/ks-digital-designsystem-angular-dialog.mjs.map +1 -0
  27. package/fesm2022/ks-digital-designsystem-angular-dropdown.mjs +46 -0
  28. package/fesm2022/ks-digital-designsystem-angular-dropdown.mjs.map +1 -0
  29. package/fesm2022/ks-digital-designsystem-angular-error-summary.mjs +49 -0
  30. package/fesm2022/ks-digital-designsystem-angular-error-summary.mjs.map +1 -0
  31. package/fesm2022/ks-digital-designsystem-angular-forms.mjs +227 -0
  32. package/fesm2022/ks-digital-designsystem-angular-forms.mjs.map +1 -0
  33. package/fesm2022/ks-digital-designsystem-angular-heading.mjs +40 -0
  34. package/fesm2022/ks-digital-designsystem-angular-heading.mjs.map +1 -0
  35. package/fesm2022/ks-digital-designsystem-angular-link.mjs +31 -0
  36. package/fesm2022/ks-digital-designsystem-angular-link.mjs.map +1 -0
  37. package/fesm2022/ks-digital-designsystem-angular-pagination.mjs +143 -0
  38. package/fesm2022/ks-digital-designsystem-angular-pagination.mjs.map +1 -0
  39. package/fesm2022/ks-digital-designsystem-angular-paragraph.mjs +25 -0
  40. package/fesm2022/ks-digital-designsystem-angular-paragraph.mjs.map +1 -0
  41. package/fesm2022/ks-digital-designsystem-angular-popover.mjs +46 -0
  42. package/fesm2022/ks-digital-designsystem-angular-popover.mjs.map +1 -0
  43. package/fesm2022/ks-digital-designsystem-angular-search.mjs +159 -0
  44. package/fesm2022/ks-digital-designsystem-angular-search.mjs.map +1 -0
  45. package/fesm2022/ks-digital-designsystem-angular-skeleton.mjs +35 -0
  46. package/fesm2022/ks-digital-designsystem-angular-skeleton.mjs.map +1 -0
  47. package/fesm2022/ks-digital-designsystem-angular-spinner.mjs +104 -0
  48. package/fesm2022/ks-digital-designsystem-angular-spinner.mjs.map +1 -0
  49. package/fesm2022/ks-digital-designsystem-angular-suggestion.mjs +375 -0
  50. package/fesm2022/ks-digital-designsystem-angular-suggestion.mjs.map +1 -0
  51. package/fesm2022/ks-digital-designsystem-angular-table.mjs +105 -0
  52. package/fesm2022/ks-digital-designsystem-angular-table.mjs.map +1 -0
  53. package/fesm2022/ks-digital-designsystem-angular-tabs.mjs +148 -0
  54. package/fesm2022/ks-digital-designsystem-angular-tabs.mjs.map +1 -0
  55. package/fesm2022/ks-digital-designsystem-angular-tag.mjs +38 -0
  56. package/fesm2022/ks-digital-designsystem-angular-tag.mjs.map +1 -0
  57. package/fesm2022/ks-digital-designsystem-angular-validation-message.mjs +25 -0
  58. package/fesm2022/ks-digital-designsystem-angular-validation-message.mjs.map +1 -0
  59. package/fesm2022/ks-digital-designsystem-angular.mjs +7 -0
  60. package/fesm2022/ks-digital-designsystem-angular.mjs.map +1 -0
  61. package/forms/README.md +3 -0
  62. package/heading/README.md +3 -0
  63. package/link/README.md +3 -0
  64. package/package.json +113 -28
  65. package/pagination/README.md +3 -0
  66. package/paragraph/README.md +3 -0
  67. package/popover/README.md +3 -0
  68. package/search/README.md +3 -0
  69. package/skeleton/README.md +3 -0
  70. package/spinner/README.md +3 -0
  71. package/suggestion/README.md +3 -0
  72. package/table/README.md +3 -0
  73. package/tabs/README.md +3 -0
  74. package/tag/README.md +3 -0
  75. package/types/ks-digital-designsystem-angular-__internals.d.ts +50 -0
  76. package/types/ks-digital-designsystem-angular-alert.d.ts +12 -0
  77. package/types/ks-digital-designsystem-angular-breadcrumbs.d.ts +13 -0
  78. package/types/ks-digital-designsystem-angular-button.d.ts +32 -0
  79. package/types/ks-digital-designsystem-angular-card.d.ts +24 -0
  80. package/types/ks-digital-designsystem-angular-chip.d.ts +15 -0
  81. package/types/ks-digital-designsystem-angular-details.d.ts +20 -0
  82. package/types/ks-digital-designsystem-angular-dialog.d.ts +18 -0
  83. package/types/ks-digital-designsystem-angular-dropdown.d.ts +13 -0
  84. package/types/ks-digital-designsystem-angular-error-summary.d.ts +14 -0
  85. package/types/ks-digital-designsystem-angular-forms.d.ts +81 -0
  86. package/types/ks-digital-designsystem-angular-heading.d.ts +19 -0
  87. package/types/ks-digital-designsystem-angular-link.d.ts +9 -0
  88. package/types/ks-digital-designsystem-angular-pagination.d.ts +58 -0
  89. package/types/ks-digital-designsystem-angular-paragraph.d.ts +8 -0
  90. package/types/ks-digital-designsystem-angular-popover.d.ts +13 -0
  91. package/types/ks-digital-designsystem-angular-search.d.ts +76 -0
  92. package/types/ks-digital-designsystem-angular-skeleton.d.ts +18 -0
  93. package/types/ks-digital-designsystem-angular-spinner.d.ts +23 -0
  94. package/types/ks-digital-designsystem-angular-suggestion.d.ts +132 -0
  95. package/types/ks-digital-designsystem-angular-table.d.ts +43 -0
  96. package/types/ks-digital-designsystem-angular-tabs.d.ts +65 -0
  97. package/types/ks-digital-designsystem-angular-tag.d.ts +15 -0
  98. package/types/ks-digital-designsystem-angular-validation-message.d.ts +8 -0
  99. package/types/ks-digital-designsystem-angular.d.ts +2 -0
  100. package/validation-message/README.md +3 -0
  101. package/dist/README.md +0 -43
  102. package/dist/fesm2022/ks-digital-designsystem-angular.mjs +0 -195
  103. package/dist/fesm2022/ks-digital-designsystem-angular.mjs.map +0 -1
  104. package/dist/index.d.ts +0 -75
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-details.mjs","sources":["../../../../packages/angular/details/src/details.ts","../../../../packages/angular/details/src/details-content.ts","../../../../packages/angular/details/src/details-summary.ts","../../../../packages/angular/details/src/ks-digital-designsystem-angular-details.ts"],"sourcesContent":["import { Directive, input } from '@angular/core'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'details[ksd-details]',\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n host: {\n class: 'ds-details',\n '[attr.data-variant]': 'dataVariant()',\n },\n})\nexport class Details {\n readonly dataVariant = input<'default' | 'tinted'>('default', {\n alias: 'data-variant',\n })\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'ksd-details-content',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content />`,\n})\nexport class DetailsContent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'ksd-details-summary',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content />`,\n})\nexport class DetailsSummary {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, Directive } from '@angular/core';
3
+ import '@digdir/designsystemet-web';
4
+ import * as i1 from '@ks-digital/designsystem-angular/__internals';
5
+ import { HostSize, HostColor } from '@ks-digital/designsystem-angular/__internals';
6
+
7
+ class Dialog {
8
+ /** Controls where the dialog appears relative to the viewport edge. Useful for drawer/side-panel variants. */
9
+ placement = input(undefined, { ...(ngDevMode ? { debugName: "placement" } : /* istanbul ignore next */ {}), alias: 'data-placement' });
10
+ /**
11
+ * Controls which interactions close the dialog.
12
+ * - `any` — closes on backdrop click or Escape key
13
+ * - `closerequest` — closes on Escape key only
14
+ * - `none` — the dialog cannot be closed by the user without an explicit close button
15
+ */
16
+ closedBy = input(undefined, { ...(ngDevMode ? { debugName: "closedBy" } : /* istanbul ignore next */ {}), alias: 'closedby' });
17
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Dialog, deps: [], target: i0.ɵɵFactoryTarget.Directive });
18
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.8", type: Dialog, isStandalone: true, selector: "dialog[ksd-dialog]", inputs: { placement: { classPropertyName: "placement", publicName: "data-placement", isSignal: true, isRequired: false, transformFunction: null }, closedBy: { classPropertyName: "closedBy", publicName: "closedby", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-placement": "placement() || undefined", "attr.closedby": "closedBy() || null" }, classAttribute: "ds-dialog" }, hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0 });
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Dialog, decorators: [{
21
+ type: Directive,
22
+ args: [{
23
+ // eslint-disable-next-line @angular-eslint/directive-selector
24
+ selector: 'dialog[ksd-dialog]',
25
+ hostDirectives: [
26
+ {
27
+ directive: HostSize,
28
+ inputs: ['data-size'],
29
+ },
30
+ {
31
+ directive: HostColor,
32
+ inputs: ['data-color'],
33
+ },
34
+ ],
35
+ host: {
36
+ class: 'ds-dialog',
37
+ '[attr.data-placement]': 'placement() || undefined',
38
+ '[attr.closedby]': 'closedBy() || null',
39
+ },
40
+ }]
41
+ }], propDecorators: { placement: [{ type: i0.Input, args: [{ isSignal: true, alias: "data-placement", required: false }] }], closedBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "closedby", required: false }] }] } });
42
+
43
+ /**
44
+ * Generated bundle index. Do not edit.
45
+ */
46
+
47
+ export { Dialog };
48
+ //# sourceMappingURL=ks-digital-designsystem-angular-dialog.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-dialog.mjs","sources":["../../../../packages/angular/dialog/src/dialog.ts","../../../../packages/angular/dialog/src/ks-digital-designsystem-angular-dialog.ts"],"sourcesContent":["import { Directive, input } from '@angular/core'\nimport '@digdir/designsystemet-web'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'dialog[ksd-dialog]',\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n host: {\n class: 'ds-dialog',\n '[attr.data-placement]': 'placement() || undefined',\n '[attr.closedby]': 'closedBy() || null',\n },\n})\nexport class Dialog {\n /** Controls where the dialog appears relative to the viewport edge. Useful for drawer/side-panel variants. */\n readonly placement = input<'bottom' | 'top' | 'left' | 'right' | undefined>(\n undefined,\n { alias: 'data-placement' },\n )\n\n /**\n * Controls which interactions close the dialog.\n * - `any` — closes on backdrop click or Escape key\n * - `closerequest` — closes on Escape key only\n * - `none` — the dialog cannot be closed by the user without an explicit close button\n */\n readonly closedBy = input<'any' | 'closerequest' | 'none' | undefined>(\n undefined,\n { alias: 'closedby' },\n )\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MA0Ba,MAAM,CAAA;;IAER,SAAS,GAAG,KAAK,CACxB,SAAS,iFACP,KAAK,EAAE,gBAAgB,EAAA,CAC1B;AAED;;;;;AAKG;IACM,QAAQ,GAAG,KAAK,CACvB,SAAS,gFACP,KAAK,EAAE,UAAU,EAAA,CACpB;uGAhBU,MAAM,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAN,MAAM,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,qBAAA,EAAA,0BAAA,EAAA,eAAA,EAAA,oBAAA,EAAA,EAAA,cAAA,EAAA,WAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAN,MAAM,EAAA,UAAA,EAAA,CAAA;kBAnBlB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;AAET,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,cAAc,EAAE;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,WAAW,CAAC;AACtB,yBAAA;AACD,wBAAA;AACE,4BAAA,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,CAAC,YAAY,CAAC;AACvB,yBAAA;AACF,qBAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,WAAW;AAClB,wBAAA,uBAAuB,EAAE,0BAA0B;AACnD,wBAAA,iBAAiB,EAAE,oBAAoB;AACxC,qBAAA;AACF,iBAAA;;;ACzBD;;AAEG;;;;"}
@@ -0,0 +1,46 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, booleanAttribute, Directive } from '@angular/core';
3
+ import '@digdir/designsystemet-web';
4
+ import * as i1 from '@ks-digital/designsystem-angular/__internals';
5
+ import { HostSize, HostColor } from '@ks-digital/designsystem-angular/__internals';
6
+
7
+ class Dropdown {
8
+ autoPlacement = input(true, { ...(ngDevMode ? { debugName: "autoPlacement" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
9
+ variant = input('default', { ...(ngDevMode ? { debugName: "variant" } : /* istanbul ignore next */ {}), alias: 'data-variant' });
10
+ // Todo: replace with centralized types
11
+ placement = input('top', { ...(ngDevMode ? { debugName: "placement" } : /* istanbul ignore next */ {}), alias: 'data-placement' });
12
+ popover = input('auto', { ...(ngDevMode ? { debugName: "popover" } : /* istanbul ignore next */ {}), alias: 'popover' });
13
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Dropdown, deps: [], target: i0.ɵɵFactoryTarget.Directive });
14
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.8", type: Dropdown, isStandalone: true, selector: "[ksd-dropdown]", inputs: { autoPlacement: { classPropertyName: "autoPlacement", publicName: "autoPlacement", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "data-variant", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "data-placement", isSignal: true, isRequired: false, transformFunction: null }, popover: { classPropertyName: "popover", publicName: "popover", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-variant": "variant()", "attr.data-placement": "placement()", "attr.data-autoplacement": "autoPlacement()", "attr.popover": "popover()" }, classAttribute: "ds-popover ds-dropdown" }, hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0 });
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Dropdown, decorators: [{
17
+ type: Directive,
18
+ args: [{
19
+ // eslint-disable-next-line @angular-eslint/directive-selector
20
+ selector: '[ksd-dropdown]',
21
+ hostDirectives: [
22
+ {
23
+ directive: HostSize,
24
+ inputs: ['data-size'],
25
+ },
26
+ {
27
+ directive: HostColor,
28
+ inputs: ['data-color'],
29
+ },
30
+ ],
31
+ host: {
32
+ class: 'ds-popover ds-dropdown',
33
+ '[attr.data-variant]': 'variant()',
34
+ '[attr.data-placement]': 'placement()',
35
+ '[attr.data-autoplacement]': 'autoPlacement()',
36
+ '[attr.popover]': 'popover()',
37
+ },
38
+ }]
39
+ }], propDecorators: { autoPlacement: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoPlacement", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "data-variant", required: false }] }], placement: [{ type: i0.Input, args: [{ isSignal: true, alias: "data-placement", required: false }] }], popover: [{ type: i0.Input, args: [{ isSignal: true, alias: "popover", required: false }] }] } });
40
+
41
+ /**
42
+ * Generated bundle index. Do not edit.
43
+ */
44
+
45
+ export { Dropdown };
46
+ //# sourceMappingURL=ks-digital-designsystem-angular-dropdown.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-dropdown.mjs","sources":["../../../../packages/angular/dropdown/src/dropdown.ts","../../../../packages/angular/dropdown/src/ks-digital-designsystem-angular-dropdown.ts"],"sourcesContent":["import { booleanAttribute, Directive, input } from '@angular/core'\nimport '@digdir/designsystemet-web'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[ksd-dropdown]',\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n host: {\n class: 'ds-popover ds-dropdown',\n '[attr.data-variant]': 'variant()',\n '[attr.data-placement]': 'placement()',\n '[attr.data-autoplacement]': 'autoPlacement()',\n '[attr.popover]': 'popover()',\n },\n})\nexport class Dropdown {\n readonly autoPlacement = input(true, { transform: booleanAttribute })\n readonly variant = input<'tinted' | 'default'>('default', {\n alias: 'data-variant',\n })\n\n // Todo: replace with centralized types\n readonly placement = input<\n | 'bottom'\n | 'bottom-end'\n | 'bottom-start'\n | 'left'\n | 'left-end'\n | 'left-start'\n | 'right'\n | 'right-end'\n | 'right-start'\n | 'top'\n | 'top-end'\n | 'top-start'\n >('top', { alias: 'data-placement' })\n\n readonly popover = input<'auto' | 'manual'>('auto', { alias: 'popover' })\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MA4Ba,QAAQ,CAAA;IACV,aAAa,GAAG,KAAK,CAAC,IAAI,qFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;IAC5D,OAAO,GAAG,KAAK,CAAuB,SAAS,+EACtD,KAAK,EAAE,cAAc,EAAA,CACrB;;IAGO,SAAS,GAAG,KAAK,CAaxB,KAAK,iFAAI,KAAK,EAAE,gBAAgB,EAAA,CAAG;IAE5B,OAAO,GAAG,KAAK,CAAoB,MAAM,+EAAI,KAAK,EAAE,SAAS,EAAA,CAAG;uGAtB9D,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAR,QAAQ,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mBAAA,EAAA,WAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,yBAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,WAAA,EAAA,EAAA,cAAA,EAAA,wBAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,YAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAR,QAAQ,EAAA,UAAA,EAAA,CAAA;kBArBpB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;;AAET,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,cAAc,EAAE;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,WAAW,CAAC;AACtB,yBAAA;AACD,wBAAA;AACE,4BAAA,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,CAAC,YAAY,CAAC;AACvB,yBAAA;AACF,qBAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,wBAAwB;AAC/B,wBAAA,qBAAqB,EAAE,WAAW;AAClC,wBAAA,uBAAuB,EAAE,aAAa;AACtC,wBAAA,2BAA2B,EAAE,iBAAiB;AAC9C,wBAAA,gBAAgB,EAAE,WAAW;AAC9B,qBAAA;AACF,iBAAA;;;AC3BD;;AAEG;;;;"}
@@ -0,0 +1,49 @@
1
+ import * as i0 from '@angular/core';
2
+ import { signal, contentChild, inject, ElementRef, effect, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import * as i1 from '@ks-digital/designsystem-angular/__internals';
4
+ import { randomId, HostSize } from '@ks-digital/designsystem-angular/__internals';
5
+ import { Heading } from '@ks-digital/designsystem-angular/heading';
6
+
7
+ class ErrorSummary {
8
+ id = signal(randomId(), ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
9
+ heading = contentChild(Heading, ...(ngDevMode ? [{ debugName: "heading" }] : /* istanbul ignore next */ []));
10
+ el = inject(ElementRef);
11
+ constructor() {
12
+ effect(() => {
13
+ if (this.heading()) {
14
+ this.heading()?.setId(this.id());
15
+ }
16
+ });
17
+ }
18
+ focus() {
19
+ this.el.nativeElement.focus();
20
+ }
21
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: ErrorSummary, deps: [], target: i0.ɵɵFactoryTarget.Component });
22
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.2.8", type: ErrorSummary, isStandalone: true, selector: "[ksd-error-summary]", host: { attributes: { "tabindex": "-1" }, properties: { "attr.aria-labelledby": "id()" }, classAttribute: "ds-error-summary" }, queries: [{ propertyName: "heading", first: true, predicate: Heading, descendants: true, isSignal: true }], hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }], ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: ErrorSummary, decorators: [{
25
+ type: Component,
26
+ args: [{
27
+ selector: '[ksd-error-summary]',
28
+ changeDetection: ChangeDetectionStrategy.OnPush,
29
+ template: ` <ng-content /> `,
30
+ hostDirectives: [
31
+ {
32
+ directive: HostSize,
33
+ inputs: ['data-size'],
34
+ },
35
+ ],
36
+ host: {
37
+ class: 'ds-error-summary',
38
+ tabindex: '-1',
39
+ '[attr.aria-labelledby]': 'id()',
40
+ },
41
+ }]
42
+ }], ctorParameters: () => [], propDecorators: { heading: [{ type: i0.ContentChild, args: [i0.forwardRef(() => Heading), { isSignal: true }] }] } });
43
+
44
+ /**
45
+ * Generated bundle index. Do not edit.
46
+ */
47
+
48
+ export { ErrorSummary };
49
+ //# sourceMappingURL=ks-digital-designsystem-angular-error-summary.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-error-summary.mjs","sources":["../../../../packages/angular/error-summary/src/error-summary.ts","../../../../packages/angular/error-summary/src/ks-digital-designsystem-angular-error-summary.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n contentChild,\n effect,\n ElementRef,\n inject,\n signal,\n} from '@angular/core'\nimport {\n HostSize,\n randomId,\n} from '@ks-digital/designsystem-angular/__internals'\nimport { Heading } from '@ks-digital/designsystem-angular/heading'\n\n@Component({\n selector: '[ksd-error-summary]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: ` <ng-content /> `,\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n ],\n host: {\n class: 'ds-error-summary',\n tabindex: '-1',\n '[attr.aria-labelledby]': 'id()',\n },\n})\nexport class ErrorSummary {\n protected id = signal(randomId())\n private heading = contentChild(Heading)\n private el = inject(ElementRef)\n\n constructor() {\n effect(() => {\n if (this.heading()) {\n this.heading()?.setId(this.id())\n }\n })\n }\n\n focus() {\n this.el.nativeElement.focus()\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MA+Ba,YAAY,CAAA;AACb,IAAA,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,yEAAC;AACzB,IAAA,OAAO,GAAG,YAAY,CAAC,OAAO,8EAAC;AAC/B,IAAA,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;AAE/B,IAAA,WAAA,GAAA;QACE,MAAM,CAAC,MAAK;AACV,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE;gBAClB,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YAClC;AACF,QAAA,CAAC,CAAC;IACJ;IAEA,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE;IAC/B;uGAfW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,UAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,kBAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAEQ,OAAO,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,QAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAf5B,CAAA,gBAAA,CAAkB,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAajB,YAAY,EAAA,UAAA,EAAA,CAAA;kBAhBxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,qBAAqB;oBAC/B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE,CAAA,gBAAA,CAAkB;AAC5B,oBAAA,cAAc,EAAE;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,WAAW,CAAC;AACtB,yBAAA;AACF,qBAAA;AACD,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,kBAAkB;AACzB,wBAAA,QAAQ,EAAE,IAAI;AACd,wBAAA,wBAAwB,EAAE,MAAM;AACjC,qBAAA;AACF,iBAAA;sHAGgC,OAAO,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;ACjCxC;;AAEG;;;;"}
@@ -0,0 +1,227 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, CUSTOM_ELEMENTS_SCHEMA, ChangeDetectionStrategy, Component, signal, booleanAttribute, Directive } from '@angular/core';
3
+ import '@digdir/designsystemet-web';
4
+ import * as i1 from '@ks-digital/designsystem-angular/__internals';
5
+ import { HostSize, HostColor } from '@ks-digital/designsystem-angular/__internals';
6
+ import * as i1$1 from '@ks-digital/designsystem-angular/validation-message';
7
+ import { ValidationMessage } from '@ks-digital/designsystem-angular/validation-message';
8
+
9
+ /**
10
+ * Use the Field component to connect inputs and labels
11
+ */
12
+ class Field {
13
+ /**
14
+ * Preferred position input for toggle inputs (radio, checkbox, switch) in field.
15
+ * @default start
16
+ */
17
+ dataPosition = input(undefined, { ...(ngDevMode ? { debugName: "dataPosition" } : /* istanbul ignore next */ {}), alias: 'data-position' });
18
+ /**
19
+ * Legacy position input kept for backward compatibility.
20
+ * @deprecated Use data-position instead.
21
+ * @default start
22
+ */
23
+ position = input(undefined, ...(ngDevMode ? [{ debugName: "position" }] : /* istanbul ignore next */ []));
24
+ /**
25
+ * Variant forwarded to ds-field.
26
+ */
27
+ dataVariant = input(undefined, { ...(ngDevMode ? { debugName: "dataVariant" } : /* istanbul ignore next */ {}), alias: 'data-variant' });
28
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Field, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.8", type: Field, isStandalone: true, selector: "ksd-field", inputs: { dataPosition: { classPropertyName: "dataPosition", publicName: "data-position", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, dataVariant: { classPropertyName: "dataVariant", publicName: "data-variant", isSignal: true, isRequired: false, transformFunction: null } }, hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0, template: `
30
+ <ds-field
31
+ class="ds-field"
32
+ [attr.data-position]="dataPosition() ?? position() ?? 'start'"
33
+ [attr.data-variant]="dataVariant()"
34
+ >
35
+ <ng-content />
36
+ </ds-field>
37
+ `, isInline: true, styles: [":host{display:grid}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
38
+ }
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Field, decorators: [{
40
+ type: Component,
41
+ args: [{ selector: 'ksd-field', changeDetection: ChangeDetectionStrategy.OnPush, hostDirectives: [
42
+ {
43
+ directive: HostSize,
44
+ inputs: ['data-size'],
45
+ },
46
+ {
47
+ directive: HostColor,
48
+ inputs: ['data-color'],
49
+ },
50
+ ], template: `
51
+ <ds-field
52
+ class="ds-field"
53
+ [attr.data-position]="dataPosition() ?? position() ?? 'start'"
54
+ [attr.data-variant]="dataVariant()"
55
+ >
56
+ <ng-content />
57
+ </ds-field>
58
+ `, schemas: [CUSTOM_ELEMENTS_SCHEMA], styles: [":host{display:grid}\n"] }]
59
+ }], propDecorators: { dataPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "data-position", required: false }] }], position: [{ type: i0.Input, args: [{ isSignal: true, alias: "position", required: false }] }], dataVariant: [{ type: i0.Input, args: [{ isSignal: true, alias: "data-variant", required: false }] }] } });
60
+
61
+ class FieldDescription {
62
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: FieldDescription, deps: [], target: i0.ɵɵFactoryTarget.Component });
63
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: FieldDescription, isStandalone: true, selector: "[ksd-field-description]", host: { attributes: { "data-field": "description" } }, ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
64
+ }
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: FieldDescription, decorators: [{
66
+ type: Component,
67
+ args: [{
68
+ selector: '[ksd-field-description]',
69
+ changeDetection: ChangeDetectionStrategy.OnPush,
70
+ host: {
71
+ 'data-field': 'description',
72
+ },
73
+ template: `<ng-content />`,
74
+ }]
75
+ }] });
76
+
77
+ class FieldError {
78
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: FieldError, deps: [], target: i0.ɵɵFactoryTarget.Component });
79
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: FieldError, isStandalone: true, selector: "ksd-error, [ksd-error]", hostDirectives: [{ directive: i1$1.ValidationMessage }], ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
80
+ }
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: FieldError, decorators: [{
82
+ type: Component,
83
+ args: [{
84
+ selector: 'ksd-error, [ksd-error]',
85
+ changeDetection: ChangeDetectionStrategy.OnPush,
86
+ template: `<ng-content />`,
87
+ hostDirectives: [
88
+ {
89
+ directive: ValidationMessage,
90
+ },
91
+ ],
92
+ }]
93
+ }] });
94
+
95
+ class Fieldset {
96
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Fieldset, deps: [], target: i0.ɵɵFactoryTarget.Component });
97
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: Fieldset, isStandalone: true, selector: "fieldset[ksd-fieldset]", host: { classAttribute: "ds-fieldset" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, styles: [":host>::ng-deep ksd-field+ksd-field{margin-block-start:var(--ds-size-4)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
98
+ }
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Fieldset, decorators: [{
100
+ type: Component,
101
+ args: [{ selector: 'fieldset[ksd-fieldset]', changeDetection: ChangeDetectionStrategy.OnPush, host: {
102
+ class: 'ds-fieldset',
103
+ }, template: ` <ng-content /> `, schemas: [CUSTOM_ELEMENTS_SCHEMA], styles: [":host>::ng-deep ksd-field+ksd-field{margin-block-start:var(--ds-size-4)}\n"] }]
104
+ }] });
105
+
106
+ class FieldsetDescription {
107
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: FieldsetDescription, deps: [], target: i0.ɵɵFactoryTarget.Component });
108
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: FieldsetDescription, isStandalone: true, selector: "p[ksd-fieldset-description]", ngImport: i0, template: `<ng-content />`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
109
+ }
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: FieldsetDescription, decorators: [{
111
+ type: Component,
112
+ args: [{
113
+ selector: 'p[ksd-fieldset-description]',
114
+ changeDetection: ChangeDetectionStrategy.OnPush,
115
+ template: `<ng-content />`,
116
+ host: {},
117
+ }]
118
+ }] });
119
+
120
+ class FieldsetLegend {
121
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: FieldsetLegend, deps: [], target: i0.ɵɵFactoryTarget.Component });
122
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: FieldsetLegend, isStandalone: true, selector: "legend[ksd-fieldset-legend]", host: { classAttribute: "ds-label" }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
123
+ }
124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: FieldsetLegend, decorators: [{
125
+ type: Component,
126
+ args: [{
127
+ selector: 'legend[ksd-fieldset-legend]',
128
+ changeDetection: ChangeDetectionStrategy.OnPush,
129
+ host: {
130
+ class: 'ds-label',
131
+ },
132
+ template: ` <ng-content /> `,
133
+ }]
134
+ }] });
135
+
136
+ class Input {
137
+ /**
138
+ * The value of the input
139
+ */
140
+ value = signal('', ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
141
+ /**
142
+ * Whether the input is readonly
143
+ */
144
+ readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
145
+ /**
146
+ * Disables element
147
+ */
148
+ disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
149
+ /**
150
+ * Whether the element is invalid.
151
+ */
152
+ ariaInvalid = input(false, { ...(ngDevMode ? { debugName: "ariaInvalid" } : /* istanbul ignore next */ {}), transform: booleanAttribute,
153
+ alias: 'aria-invalid' });
154
+ onClick(event) {
155
+ if (this.readonly()) {
156
+ event.preventDefault();
157
+ }
158
+ }
159
+ onInput(event) {
160
+ const target = event.target;
161
+ const val = target?.value;
162
+ this.value.set(val ?? '');
163
+ }
164
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Input, deps: [], target: i0.ɵɵFactoryTarget.Directive });
165
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.8", type: Input, isStandalone: true, selector: "input[ksd-input], textarea[ksd-input], select[ksd-input]", inputs: { readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, ariaInvalid: { classPropertyName: "ariaInvalid", publicName: "aria-invalid", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "onClick($event)", "input": "onInput($event)" }, properties: { "attr.readonly": "readonly() ? true : null", "attr.disabled": "disabled() ? true : null", "attr.aria-invalid": "ariaInvalid() ? true : null" }, classAttribute: "ds-input" }, hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0 });
166
+ }
167
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Input, decorators: [{
168
+ type: Directive,
169
+ args: [{
170
+ // eslint-disable-next-line @angular-eslint/directive-selector
171
+ selector: 'input[ksd-input], textarea[ksd-input], select[ksd-input]',
172
+ hostDirectives: [
173
+ {
174
+ directive: HostSize,
175
+ inputs: ['data-size'],
176
+ },
177
+ {
178
+ directive: HostColor,
179
+ inputs: ['data-color'],
180
+ },
181
+ ],
182
+ host: {
183
+ class: 'ds-input',
184
+ '[attr.readonly]': 'readonly() ? true : null',
185
+ '[attr.disabled]': 'disabled() ? true : null',
186
+ '[attr.aria-invalid]': 'ariaInvalid() ? true : null',
187
+ '(click)': 'onClick($event)',
188
+ '(input)': 'onInput($event)',
189
+ },
190
+ }]
191
+ }], propDecorators: { readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], ariaInvalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-invalid", required: false }] }] } });
192
+
193
+ class Label {
194
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Label, deps: [], target: i0.ɵɵFactoryTarget.Component });
195
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: Label, isStandalone: true, selector: "ksd-label", hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0, template: `
196
+ <!-- eslint-disable @angular-eslint/template/label-has-associated-control -- Fieldobserver handles binding the label to the input -->
197
+ <label class="ds-label"><ng-content /></label>
198
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
199
+ }
200
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Label, decorators: [{
201
+ type: Component,
202
+ args: [{
203
+ selector: 'ksd-label',
204
+ changeDetection: ChangeDetectionStrategy.OnPush,
205
+ hostDirectives: [
206
+ {
207
+ directive: HostSize,
208
+ inputs: ['data-size'],
209
+ },
210
+ {
211
+ directive: HostColor,
212
+ inputs: ['data-color'],
213
+ },
214
+ ],
215
+ template: `
216
+ <!-- eslint-disable @angular-eslint/template/label-has-associated-control -- Fieldobserver handles binding the label to the input -->
217
+ <label class="ds-label"><ng-content /></label>
218
+ `,
219
+ }]
220
+ }] });
221
+
222
+ /**
223
+ * Generated bundle index. Do not edit.
224
+ */
225
+
226
+ export { Field, FieldDescription, FieldError, Fieldset, FieldsetDescription, FieldsetLegend, Input, Label };
227
+ //# sourceMappingURL=ks-digital-designsystem-angular-forms.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-forms.mjs","sources":["../../../../packages/angular/forms/src/field/field.ts","../../../../packages/angular/forms/src/field/field-description.ts","../../../../packages/angular/forms/src/field/field-error.ts","../../../../packages/angular/forms/src/fieldset/fieldset.ts","../../../../packages/angular/forms/src/fieldset/fieldset-description.ts","../../../../packages/angular/forms/src/fieldset/fieldset-legend.ts","../../../../packages/angular/forms/src/input/input.ts","../../../../packages/angular/forms/src/label/label.ts","../../../../packages/angular/forms/src/ks-digital-designsystem-angular-forms.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n input,\n} from '@angular/core'\nimport '@digdir/designsystemet-web'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n/**\n * Use the Field component to connect inputs and labels\n */\n@Component({\n selector: 'ksd-field',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n template: `\n <ds-field\n class=\"ds-field\"\n [attr.data-position]=\"dataPosition() ?? position() ?? 'start'\"\n [attr.data-variant]=\"dataVariant()\"\n >\n <ng-content />\n </ds-field>\n `,\n styles: `\n :host {\n display: grid;\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class Field {\n /**\n * Preferred position input for toggle inputs (radio, checkbox, switch) in field.\n * @default start\n */\n dataPosition = input<'start' | 'end' | undefined>(undefined, {\n alias: 'data-position',\n })\n\n /**\n * Legacy position input kept for backward compatibility.\n * @deprecated Use data-position instead.\n * @default start\n */\n position = input<'start' | 'end' | undefined>(undefined)\n\n /**\n * Variant forwarded to ds-field.\n */\n dataVariant = input<'outline' | undefined>(undefined, {\n alias: 'data-variant',\n })\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: '[ksd-field-description]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'data-field': 'description',\n },\n template: `<ng-content />`,\n})\nexport class FieldDescription {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\nimport { ValidationMessage } from '@ks-digital/designsystem-angular/validation-message'\n\n@Component({\n selector: 'ksd-error, [ksd-error]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content />`,\n hostDirectives: [\n {\n directive: ValidationMessage,\n },\n ],\n})\nexport class FieldError {}\n","import {\n ChangeDetectionStrategy,\n Component,\n CUSTOM_ELEMENTS_SCHEMA,\n} from '@angular/core'\nimport '@digdir/designsystemet-web'\n\n@Component({\n selector: 'fieldset[ksd-fieldset]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'ds-fieldset',\n },\n template: ` <ng-content /> `,\n styles: `\n :host > ::ng-deep ksd-field + ksd-field {\n margin-block-start: var(--ds-size-4);\n }\n `,\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class Fieldset {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'p[ksd-fieldset-description]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `<ng-content />`,\n host: {},\n})\nexport class FieldsetDescription {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\n\n@Component({\n selector: 'legend[ksd-fieldset-legend]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'ds-label',\n },\n template: ` <ng-content /> `,\n})\nexport class FieldsetLegend {}\n","import { booleanAttribute, Directive, input, signal } from '@angular/core'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: 'input[ksd-input], textarea[ksd-input], select[ksd-input]',\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n host: {\n class: 'ds-input',\n '[attr.readonly]': 'readonly() ? true : null',\n '[attr.disabled]': 'disabled() ? true : null',\n '[attr.aria-invalid]': 'ariaInvalid() ? true : null',\n '(click)': 'onClick($event)',\n '(input)': 'onInput($event)',\n },\n})\nexport class Input {\n /**\n * The value of the input\n */\n value = signal<string | undefined>('')\n\n /**\n * Whether the input is readonly\n */\n readonly readonly = input(false, { transform: booleanAttribute })\n\n /**\n * Disables element\n */\n readonly disabled = input(false, { transform: booleanAttribute })\n\n /**\n * Whether the element is invalid.\n */\n readonly ariaInvalid = input(false, {\n transform: booleanAttribute,\n alias: 'aria-invalid',\n })\n\n onClick(event: Event) {\n if (this.readonly()) {\n event.preventDefault()\n }\n }\n\n onInput(event: Event) {\n const target = event.target as\n | HTMLInputElement\n | HTMLTextAreaElement\n | HTMLSelectElement\n | null\n const val = target?.value\n this.value.set(val ?? '')\n }\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n@Component({\n selector: 'ksd-label',\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n template: `\n <!-- eslint-disable @angular-eslint/template/label-has-associated-control -- Fieldobserver handles binding the label to the input -->\n <label class=\"ds-label\"><ng-content /></label>\n `,\n})\nexport class Label {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import * as i0 from '@angular/core';
2
+ import { signal, input, Directive } from '@angular/core';
3
+
4
+ class Heading {
5
+ id = signal(undefined, ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
6
+ /**
7
+ * Changes text sizing
8
+ * @default 'md'
9
+ */
10
+ dataSize = input(undefined, { ...(ngDevMode ? { debugName: "dataSize" } : /* istanbul ignore next */ {}), alias: 'data-size' });
11
+ /**
12
+ * Set the id of the heading
13
+ * @param id
14
+ */
15
+ setId(id) {
16
+ this.id.set(id);
17
+ }
18
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Heading, deps: [], target: i0.ɵɵFactoryTarget.Directive });
19
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.8", type: Heading, isStandalone: true, selector: "h1[ksd-heading], h2[ksd-heading], h3[ksd-heading], h4[ksd-heading], h5[ksd-heading], h6[ksd-heading]", inputs: { dataSize: { classPropertyName: "dataSize", publicName: "data-size", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-size": "dataSize() || null", "attr.id": "id() || null" }, classAttribute: "ds-heading" }, ngImport: i0 });
20
+ }
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Heading, decorators: [{
22
+ type: Directive,
23
+ args: [{
24
+ selector:
25
+ // eslint-disable-next-line @angular-eslint/directive-selector
26
+ 'h1[ksd-heading], h2[ksd-heading], h3[ksd-heading], h4[ksd-heading], h5[ksd-heading], h6[ksd-heading]',
27
+ host: {
28
+ class: 'ds-heading',
29
+ '[attr.data-size]': 'dataSize() || null',
30
+ '[attr.id]': 'id() || null',
31
+ },
32
+ }]
33
+ }], propDecorators: { dataSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "data-size", required: false }] }] } });
34
+
35
+ /**
36
+ * Generated bundle index. Do not edit.
37
+ */
38
+
39
+ export { Heading };
40
+ //# sourceMappingURL=ks-digital-designsystem-angular-heading.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-heading.mjs","sources":["../../../../packages/angular/heading/src/heading.ts","../../../../packages/angular/heading/src/ks-digital-designsystem-angular-heading.ts"],"sourcesContent":["import { Directive, input, signal } from '@angular/core'\n\n@Directive({\n selector:\n // eslint-disable-next-line @angular-eslint/directive-selector\n 'h1[ksd-heading], h2[ksd-heading], h3[ksd-heading], h4[ksd-heading], h5[ksd-heading], h6[ksd-heading]',\n host: {\n class: 'ds-heading',\n '[attr.data-size]': 'dataSize() || null',\n '[attr.id]': 'id() || null',\n },\n})\nexport class Heading {\n public id = signal<string | undefined>(undefined)\n /**\n * Changes text sizing\n * @default 'md'\n */\n readonly dataSize = input<'2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl'>(\n undefined,\n {\n alias: 'data-size',\n },\n )\n\n /**\n * Set the id of the heading\n * @param id\n */\n setId(id: string) {\n this.id.set(id)\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAYa,OAAO,CAAA;AACX,IAAA,EAAE,GAAG,MAAM,CAAqB,SAAS,yEAAC;AACjD;;;AAGG;IACM,QAAQ,GAAG,KAAK,CACvB,SAAS,gFAEP,KAAK,EAAE,WAAW,EAAA,CAErB;AAED;;;AAGG;AACH,IAAA,KAAK,CAAC,EAAU,EAAA;AACd,QAAA,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IACjB;uGAnBW,OAAO,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAP,OAAO,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sGAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,oBAAA,EAAA,SAAA,EAAA,cAAA,EAAA,EAAA,cAAA,EAAA,YAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAP,OAAO,EAAA,UAAA,EAAA,CAAA;kBAVnB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;oBACT,QAAQ;;oBAEN,sGAAsG;AACxG,oBAAA,IAAI,EAAE;AACJ,wBAAA,KAAK,EAAE,YAAY;AACnB,wBAAA,kBAAkB,EAAE,oBAAoB;AACxC,wBAAA,WAAW,EAAE,cAAc;AAC5B,qBAAA;AACF,iBAAA;;;ACXD;;AAEG;;;;"}
@@ -0,0 +1,31 @@
1
+ import * as i0 from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import * as i1 from '@ks-digital/designsystem-angular/__internals';
4
+ import { HostSize, HostColor } from '@ks-digital/designsystem-angular/__internals';
5
+
6
+ class Link {
7
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Link, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: Link, isStandalone: true, selector: "a[ksd-link]", host: { classAttribute: "ds-link" }, hostDirectives: [{ directive: i1.HostSize, inputs: ["data-size", "data-size"] }, { directive: i1.HostColor, inputs: ["data-color", "data-color"] }], ngImport: i0, template: ` <ng-content /> `, isInline: true, styles: [":host:has(>span)>:is(ng-icon){margin-inline:var(--ds-size-1);margin-inline-start:0}:host ng-icon{display:inline-flex;vertical-align:middle;font-size:var(--ng-icon-size, 1.3em)}:host svg{width:1em;height:1em}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: Link, decorators: [{
11
+ type: Component,
12
+ args: [{ selector: 'a[ksd-link]', changeDetection: ChangeDetectionStrategy.OnPush, template: ` <ng-content /> `, hostDirectives: [
13
+ {
14
+ directive: HostSize,
15
+ inputs: ['data-size'],
16
+ },
17
+ {
18
+ directive: HostColor,
19
+ inputs: ['data-color'],
20
+ },
21
+ ], host: {
22
+ class: 'ds-link',
23
+ }, styles: [":host:has(>span)>:is(ng-icon){margin-inline:var(--ds-size-1);margin-inline-start:0}:host ng-icon{display:inline-flex;vertical-align:middle;font-size:var(--ng-icon-size, 1.3em)}:host svg{width:1em;height:1em}\n"] }]
24
+ }] });
25
+
26
+ /**
27
+ * Generated bundle index. Do not edit.
28
+ */
29
+
30
+ export { Link };
31
+ //# sourceMappingURL=ks-digital-designsystem-angular-link.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ks-digital-designsystem-angular-link.mjs","sources":["../../../../packages/angular/link/src/link.ts","../../../../packages/angular/link/src/ks-digital-designsystem-angular-link.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core'\nimport {\n HostColor,\n HostSize,\n} from '@ks-digital/designsystem-angular/__internals'\n\n@Component({\n selector: 'a[ksd-link]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: ` <ng-content /> `,\n hostDirectives: [\n {\n directive: HostSize,\n inputs: ['data-size'],\n },\n {\n directive: HostColor,\n inputs: ['data-color'],\n },\n ],\n host: {\n class: 'ds-link',\n },\n styles: `\n :host {\n &:has(> span) > :is(ng-icon) {\n margin-inline: var(--ds-size-1);\n margin-inline-start: 0;\n }\n ng-icon {\n display: inline-flex;\n vertical-align: middle;\n font-size: var(--ng-icon-size, 1.3em);\n }\n svg {\n width: 1em;\n height: 1em;\n }\n }\n `,\n})\nexport class Link {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAyCa,IAAI,CAAA;uGAAJ,IAAI,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAJ,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAI,iQAhCL,CAAA,gBAAA,CAAkB,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,mNAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAgCjB,IAAI,EAAA,UAAA,EAAA,CAAA;kBAnChB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,mBACN,uBAAuB,CAAC,MAAM,EAAA,QAAA,EACrC,kBAAkB,EAAA,cAAA,EACZ;AACd,wBAAA;AACE,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,WAAW,CAAC;AACtB,yBAAA;AACD,wBAAA;AACE,4BAAA,SAAS,EAAE,SAAS;4BACpB,MAAM,EAAE,CAAC,YAAY,CAAC;AACvB,yBAAA;qBACF,EAAA,IAAA,EACK;AACJ,wBAAA,KAAK,EAAE,SAAS;AACjB,qBAAA,EAAA,MAAA,EAAA,CAAA,mNAAA,CAAA,EAAA;;;ACtBH;;AAEG;;;;"}