@simplysm/angular 14.1.2 → 14.1.6
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.
- package/dist/controls/button/sd-additional-button.js +3 -2
- package/dist/controls/button/sd-anchor.js +3 -2
- package/dist/controls/button/sd-button.js +11 -6
- package/dist/controls/button/sd-modal-select-button.js +15 -8
- package/dist/controls/checkbox/sd-checkbox-group-item.js +7 -4
- package/dist/controls/checkbox/sd-checkbox-group.js +3 -2
- package/dist/controls/checkbox/sd-checkbox.js +13 -7
- package/dist/controls/checkbox/sd-switch.js +9 -5
- package/dist/controls/collapse/sd-collapse-icon.js +7 -4
- package/dist/controls/collapse/sd-collapse.js +9 -5
- package/dist/controls/dropdown/sd-dropdown-popup.js +1 -1
- package/dist/controls/dropdown/sd-dropdown.js +5 -3
- package/dist/controls/form/sd-form.js +1 -1
- package/dist/controls/gap/sd-gap.js +13 -7
- package/dist/controls/input/sd-date-range-picker.js +7 -4
- package/dist/controls/input/sd-numpad.js +7 -4
- package/dist/controls/input/sd-range.js +9 -5
- package/dist/controls/input/sd-textarea.js +21 -11
- package/dist/controls/input/sd-textfield-type-handlers.d.ts.map +1 -1
- package/dist/controls/input/sd-textfield-type-handlers.js +5 -8
- package/dist/controls/input/sd-textfield.d.ts.map +1 -1
- package/dist/controls/input/sd-textfield.js +54 -26
- package/dist/controls/list/sd-list-item.js +19 -10
- package/dist/controls/list/sd-list.js +1 -1
- package/dist/controls/pagination/sd-pagination.js +11 -6
- package/dist/controls/select/sd-select-button.js +1 -1
- package/dist/controls/select/sd-select-item.js +7 -4
- package/dist/controls/select/sd-select.js +35 -18
- package/dist/controls/tab/sd-tab-item.d.ts +4 -4
- package/dist/controls/tab/sd-tab-item.d.ts.map +1 -1
- package/dist/controls/tab/sd-tab-item.js +6 -4
- package/dist/controls/tab/sd-tab.d.ts +4 -4
- package/dist/controls/tab/sd-tab.d.ts.map +1 -1
- package/dist/controls/tab/sd-tab.js +3 -2
- package/dist/core/app-structure/sd-app-structure.provider.js +10 -5
- package/dist/core/busy/sd-busy-container.js +9 -5
- package/dist/core/busy/sd-busy.provider.js +4 -2
- package/dist/core/config/injectSdSystemConfigResource.js +1 -1
- package/dist/core/config/sd-system-config.provider.d.ts +1 -1
- package/dist/core/config/sd-system-config.provider.d.ts.map +1 -1
- package/dist/core/config/sd-system-config.provider.js +1 -1
- package/dist/core/mark.d.ts +1 -1
- package/dist/core/mark.d.ts.map +1 -1
- package/dist/core/modal/sd-activated-modal.provider.js +4 -2
- package/dist/core/modal/sd-confirm-modal.js +5 -3
- package/dist/core/modal/sd-modal.js +37 -19
- package/dist/core/modal/sd-modal.provider.js +2 -1
- package/dist/core/modal/sd-prompt-modal.js +7 -4
- package/dist/core/selection/useExpandingManager.js +14 -7
- package/dist/core/selection/useSelectionManager.js +8 -4
- package/dist/core/selection/useSortingManager.js +2 -1
- package/dist/core/setupModelHook.d.ts +1 -1
- package/dist/core/setupModelHook.d.ts.map +1 -1
- package/dist/core/shared-data/sd-shared-data.provider.js +6 -3
- package/dist/core/show-effect/sd-show-effect.js +2 -1
- package/dist/core/show-effect/setupRevealOnShow.js +2 -1
- package/dist/core/template/sd-item-of-template.js +2 -1
- package/dist/core/template/sd-typed-template.js +2 -1
- package/dist/core/toast/sd-toast-container.js +1 -1
- package/dist/core/toast/sd-toast.js +13 -7
- package/dist/core/toast/sd-toast.provider.js +4 -2
- package/dist/data/crud/sd-base-container.js +19 -10
- package/dist/data/crud/sd-crud-detail.js +22 -12
- package/dist/data/crud/sd-crud-list.d.ts +1 -1
- package/dist/data/crud/sd-crud-list.d.ts.map +1 -1
- package/dist/data/crud/sd-crud-list.js +66 -34
- package/dist/data/kanban/sd-kanban-board.js +5 -3
- package/dist/data/kanban/sd-kanban-lane.js +14 -9
- package/dist/data/kanban/sd-kanban.js +18 -11
- package/dist/data/permission-table/sd-permission-table.js +15 -8
- package/dist/data/shared-data/sd-shared-data-select-button.d.ts +2 -2
- package/dist/data/shared-data/sd-shared-data-select-button.d.ts.map +1 -1
- package/dist/data/shared-data/sd-shared-data-select-button.js +13 -7
- package/dist/data/shared-data/sd-shared-data-select-list.js +27 -14
- package/dist/data/shared-data/sd-shared-data-select.js +45 -23
- package/dist/data/sheet/injectSheetColumnResizing.js +6 -3
- package/dist/data/sheet/sd-sheet-column-cell-template.js +2 -1
- package/dist/data/sheet/sd-sheet-column.d.ts +4 -4
- package/dist/data/sheet/sd-sheet-column.d.ts.map +1 -1
- package/dist/data/sheet/sd-sheet-column.js +16 -8
- package/dist/data/sheet/sd-sheet-config.modal.d.ts +1 -1
- package/dist/data/sheet/sd-sheet-config.modal.d.ts.map +1 -1
- package/dist/data/sheet/sd-sheet-config.modal.js +11 -6
- package/dist/data/sheet/sd-sheet.d.ts +2 -2
- package/dist/data/sheet/sd-sheet.d.ts.map +1 -1
- package/dist/data/sheet/sd-sheet.js +57 -32
- package/dist/data/sheet/useSheetCellAgent.js +2 -1
- package/dist/data/sheet/useSheetCellStyling.js +2 -1
- package/dist/data/sheet/useSheetColumnFixing.js +2 -1
- package/dist/data/sheet/useSheetDisplayPipeline.js +8 -4
- package/dist/data/sheet/useSheetLayoutEngine.js +10 -5
- package/dist/data/state-preset/sd-state-preset.js +9 -5
- package/dist/features/address/sd-address-search.modal.js +5 -3
- package/dist/features/editor/sd-markdown-editor.d.ts +2 -1
- package/dist/features/editor/sd-markdown-editor.d.ts.map +1 -1
- package/dist/features/editor/sd-markdown-editor.js +11 -6
- package/dist/features/editor/sd-tiptap-editor.d.ts +1 -1
- package/dist/features/editor/sd-tiptap-editor.d.ts.map +1 -1
- package/dist/features/editor/sd-tiptap-editor.js +13 -7
- package/dist/features/editor/useTiptapToolbar.d.ts +2 -1
- package/dist/features/editor/useTiptapToolbar.d.ts.map +1 -1
- package/dist/features/editor/useTiptapToolbar.js +8 -4
- package/dist/features/theme/sd-theme-provider.js +6 -3
- package/dist/features/theme/sd-theme-selector.js +5 -3
- package/dist/features/visual/sd-barcode.js +7 -4
- package/dist/features/visual/sd-calendar.js +13 -7
- package/dist/features/visual/sd-echarts.js +9 -5
- package/dist/features/visual/sd-label.js +5 -3
- package/dist/features/visual/sd-note.js +5 -3
- package/dist/features/visual/sd-progress.js +9 -5
- package/dist/layout/sidebar/sd-sidebar-container.js +3 -2
- package/dist/layout/sidebar/sd-sidebar-menu.js +11 -6
- package/dist/layout/sidebar/sd-sidebar-user.js +5 -3
- package/dist/layout/sidebar/sd-sidebar.js +3 -2
- package/dist/layout/topbar/sd-topbar-container.js +1 -1
- package/dist/layout/topbar/sd-topbar-menu.js +7 -4
- package/dist/layout/topbar/sd-topbar-user.js +5 -3
- package/dist/layout/topbar/sd-topbar.js +5 -3
- package/package.json +11 -13
- package/src/controls/input/sd-textfield-type-handlers.ts +5 -7
- package/src/controls/input/sd-textfield.ts +5 -1
- package/src/controls/tab/sd-tab-item.ts +3 -3
- package/src/controls/tab/sd-tab.ts +2 -2
- package/src/core/config/injectSdSystemConfigResource.ts +1 -1
- package/src/core/config/sd-system-config.provider.ts +2 -2
- package/src/core/mark.ts +2 -2
- package/src/core/setupModelHook.ts +2 -2
- package/src/data/shared-data/sd-shared-data-select-button.ts +2 -2
- package/src/data/sheet/sd-sheet-column.ts +2 -2
- package/src/features/editor/sd-markdown-editor.ts +2 -2
- package/src/features/editor/useTiptapToolbar.ts +21 -2
package/src/core/mark.ts
CHANGED
|
@@ -4,6 +4,6 @@ import type { WritableSignal } from "@angular/core";
|
|
|
4
4
|
* WritableSignal의 값이 in-place mutation된 후 소비자에게 변경을 알린다.
|
|
5
5
|
* shallow copy로 새 참조를 생성하여 signal을 업데이트한다.
|
|
6
6
|
*/
|
|
7
|
-
export function mark(sig: WritableSignal<
|
|
8
|
-
sig.update((v) => (Array.isArray(v) ? [...v] : { ...v }));
|
|
7
|
+
export function mark<T extends object>(sig: WritableSignal<T>): void {
|
|
8
|
+
sig.update((v) => (Array.isArray(v) ? [...(v as unknown[])] : { ...v }) as T);
|
|
9
9
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ErrorHandler, inject, type Signal, type WritableSignal } from "@angular/core";
|
|
2
2
|
|
|
3
|
-
export function setupModelHook<T
|
|
4
|
-
model:
|
|
3
|
+
export function setupModelHook<T>(
|
|
4
|
+
model: WritableSignal<T>,
|
|
5
5
|
canFn: Signal<(item: T) => boolean | Promise<boolean>>,
|
|
6
6
|
): void {
|
|
7
7
|
const errorHandler = inject(ErrorHandler);
|
|
@@ -57,10 +57,10 @@ import type { SelectModeValue } from "../../controls/select/sd-select";
|
|
|
57
57
|
})
|
|
58
58
|
export class SdSharedDataSelectButton<
|
|
59
59
|
TItem extends SharedDataBase<string | number>,
|
|
60
|
-
TMode extends keyof SelectModeValue<
|
|
60
|
+
TMode extends keyof SelectModeValue<TItem>,
|
|
61
61
|
TModal extends SdSelectModal<any>,
|
|
62
62
|
> {
|
|
63
|
-
value = model<SelectModeValue<
|
|
63
|
+
value = model<SelectModeValue<TItem["__valueKey"] | undefined>[TMode]>();
|
|
64
64
|
items = input<TItem[]>([]);
|
|
65
65
|
modal = input.required<SdSelectModalInfo<TModal>>();
|
|
66
66
|
selectMode = input<TMode>("single" as TMode);
|
|
@@ -19,7 +19,7 @@ export interface SdSheetCellContext<T = unknown> {
|
|
|
19
19
|
selector: "sd-sheet-column",
|
|
20
20
|
standalone: true,
|
|
21
21
|
})
|
|
22
|
-
export class SdSheetColumn
|
|
22
|
+
export class SdSheetColumn {
|
|
23
23
|
key = input.required<string>();
|
|
24
24
|
header = input<string | string[]>("");
|
|
25
25
|
headerStyle = input<string>();
|
|
@@ -32,7 +32,7 @@ export class SdSheetColumn<T = unknown> {
|
|
|
32
32
|
disableResizing = input(false, { transform: booleanAttribute });
|
|
33
33
|
ordering = input(0);
|
|
34
34
|
|
|
35
|
-
cellTplRef = contentChild.required<SdSheetColumnCellTemplate<
|
|
35
|
+
cellTplRef = contentChild.required<SdSheetColumnCellTemplate<unknown>, TemplateRef<SdSheetCellContext<unknown>>>(
|
|
36
36
|
SdSheetColumnCellTemplate,
|
|
37
37
|
{ read: TemplateRef },
|
|
38
38
|
);
|
|
@@ -19,7 +19,7 @@ import { Editor, type AnyExtension } from "@tiptap/core";
|
|
|
19
19
|
import StarterKit from "@tiptap/starter-kit";
|
|
20
20
|
import Placeholder from "@tiptap/extension-placeholder";
|
|
21
21
|
import { Markdown } from "@tiptap/markdown";
|
|
22
|
-
import { useTiptapToolbar } from "./useTiptapToolbar";
|
|
22
|
+
import { useTiptapToolbar, type TiptapCommand } from "./useTiptapToolbar";
|
|
23
23
|
|
|
24
24
|
const DEFAULT_EXTENSIONS: AnyExtension[] = [
|
|
25
25
|
StarterKit,
|
|
@@ -236,7 +236,7 @@ export class SdMarkdownEditor {
|
|
|
236
236
|
});
|
|
237
237
|
}
|
|
238
238
|
|
|
239
|
-
execCmd(cmd:
|
|
239
|
+
execCmd(cmd: TiptapCommand): void {
|
|
240
240
|
if (this.disabled() || this.readonly()) return;
|
|
241
241
|
this._toolbar.execCmd(cmd);
|
|
242
242
|
}
|
|
@@ -18,6 +18,25 @@ export interface TiptapActiveStates {
|
|
|
18
18
|
alignJustify: boolean;
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
+
export type TiptapCommand =
|
|
22
|
+
| "bold"
|
|
23
|
+
| "italic"
|
|
24
|
+
| "underline"
|
|
25
|
+
| "strike"
|
|
26
|
+
| "h1"
|
|
27
|
+
| "h2"
|
|
28
|
+
| "bulletList"
|
|
29
|
+
| "orderedList"
|
|
30
|
+
| "indent"
|
|
31
|
+
| "outdent"
|
|
32
|
+
| "blockquote"
|
|
33
|
+
| "codeBlock"
|
|
34
|
+
| "alignLeft"
|
|
35
|
+
| "alignCenter"
|
|
36
|
+
| "alignRight"
|
|
37
|
+
| "alignJustify"
|
|
38
|
+
| "clean";
|
|
39
|
+
|
|
21
40
|
export const DEFAULT_ACTIVE_STATES: TiptapActiveStates = {
|
|
22
41
|
h1: false,
|
|
23
42
|
h2: false,
|
|
@@ -44,7 +63,7 @@ export function useTiptapToolbar(opt: TiptapToolbarOptions): {
|
|
|
44
63
|
activeColor: WritableSignal<string>;
|
|
45
64
|
activeBgColor: WritableSignal<string>;
|
|
46
65
|
colorPickerMode: WritableSignal<"text" | "bg" | undefined>;
|
|
47
|
-
execCmd: (cmd:
|
|
66
|
+
execCmd: (cmd: TiptapCommand) => void;
|
|
48
67
|
refreshActiveStates: () => void;
|
|
49
68
|
toggleColorPicker: (mode: "text" | "bg") => void;
|
|
50
69
|
applyColor: (color: string | undefined) => void;
|
|
@@ -54,7 +73,7 @@ export function useTiptapToolbar(opt: TiptapToolbarOptions): {
|
|
|
54
73
|
const activeBgColor = signal("");
|
|
55
74
|
const colorPickerMode = signal<"text" | "bg" | undefined>(undefined);
|
|
56
75
|
|
|
57
|
-
function execCmd(cmd:
|
|
76
|
+
function execCmd(cmd: TiptapCommand): void {
|
|
58
77
|
const ed = opt.editor();
|
|
59
78
|
if (ed == null) return;
|
|
60
79
|
|