@cratis/scene.blueprint.default 4.38.0 → 4.40.0
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/ComponentName.ts +27 -0
- package/defaultBlueprintComponents.ts +10 -1
- package/dist/cjs/ComponentName.js +9 -0
- package/dist/cjs/ComponentName.js.map +1 -1
- package/dist/cjs/defaultBlueprintComponents.js +19 -1
- package/dist/cjs/defaultBlueprintComponents.js.map +1 -1
- package/dist/cjs/foundation/BulkBar.js +62 -0
- package/dist/cjs/foundation/BulkBar.js.map +1 -0
- package/dist/cjs/foundation/DataList.js +436 -0
- package/dist/cjs/foundation/DataList.js.map +1 -0
- package/dist/cjs/foundation/FormScreenBody.js +447 -0
- package/dist/cjs/foundation/FormScreenBody.js.map +1 -0
- package/dist/cjs/foundation/FoundationStates.js +2 -1
- package/dist/cjs/foundation/FoundationStates.js.map +1 -1
- package/dist/cjs/foundation/GlobalSearch.js +54 -0
- package/dist/cjs/foundation/GlobalSearch.js.map +1 -0
- package/dist/cjs/foundation/KanbanBoard.js +222 -0
- package/dist/cjs/foundation/KanbanBoard.js.map +1 -0
- package/dist/cjs/foundation/NotificationsButton.js +45 -0
- package/dist/cjs/foundation/NotificationsButton.js.map +1 -0
- package/dist/cjs/foundation/SubNavigation.js +72 -0
- package/dist/cjs/foundation/SubNavigation.js.map +1 -0
- package/dist/cjs/foundation/TabSet.js +101 -0
- package/dist/cjs/foundation/TabSet.js.map +1 -0
- package/dist/cjs/foundation/WizardProgress.js +185 -0
- package/dist/cjs/foundation/WizardProgress.js.map +1 -0
- package/dist/cjs/foundation/boardModel.js +67 -0
- package/dist/cjs/foundation/boardModel.js.map +1 -0
- package/dist/cjs/foundation/formModel.js +158 -0
- package/dist/cjs/foundation/formModel.js.map +1 -0
- package/dist/cjs/foundation/foundationComponentMetadata.js +54 -0
- package/dist/cjs/foundation/foundationComponentMetadata.js.map +1 -1
- package/dist/cjs/foundation/foundationDescriptors.js +400 -0
- package/dist/cjs/foundation/foundationDescriptors.js.map +1 -1
- package/dist/cjs/foundation/foundationSamples.js +303 -0
- package/dist/cjs/foundation/foundationSamples.js.map +1 -1
- package/dist/cjs/foundation/foundationStrings.js +72 -0
- package/dist/cjs/foundation/foundationStrings.js.map +1 -1
- package/dist/cjs/foundation/listModel.js +200 -0
- package/dist/cjs/foundation/listModel.js.map +1 -0
- package/dist/cjs/foundation/tabModel.js +41 -0
- package/dist/cjs/foundation/tabModel.js.map +1 -0
- package/dist/cjs/foundation/urlState.js +57 -0
- package/dist/cjs/foundation/urlState.js.map +1 -0
- package/dist/cjs/foundation/useCompactWidth.js +23 -0
- package/dist/cjs/foundation/useCompactWidth.js.map +1 -0
- package/dist/cjs/foundation/wizardModel.js +50 -0
- package/dist/cjs/foundation/wizardModel.js.map +1 -0
- package/dist/cjs/index.js +71 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/ComponentName.d.ts +10 -1
- package/dist/esm/ComponentName.d.ts.map +1 -1
- package/dist/esm/ComponentName.js +9 -0
- package/dist/esm/ComponentName.js.map +1 -1
- package/dist/esm/defaultBlueprintComponents.d.ts.map +1 -1
- package/dist/esm/defaultBlueprintComponents.js +19 -1
- package/dist/esm/defaultBlueprintComponents.js.map +1 -1
- package/dist/esm/foundation/BulkBar.d.ts +4 -0
- package/dist/esm/foundation/BulkBar.d.ts.map +1 -0
- package/dist/esm/foundation/BulkBar.js +59 -0
- package/dist/esm/foundation/BulkBar.js.map +1 -0
- package/dist/esm/foundation/DataList.d.ts +3 -0
- package/dist/esm/foundation/DataList.d.ts.map +1 -0
- package/dist/esm/foundation/DataList.js +434 -0
- package/dist/esm/foundation/DataList.js.map +1 -0
- package/dist/esm/foundation/FormScreenBody.d.ts +3 -0
- package/dist/esm/foundation/FormScreenBody.d.ts.map +1 -0
- package/dist/esm/foundation/FormScreenBody.js +445 -0
- package/dist/esm/foundation/FormScreenBody.js.map +1 -0
- package/dist/esm/foundation/FoundationStates.js +2 -1
- package/dist/esm/foundation/FoundationStates.js.map +1 -1
- package/dist/esm/foundation/GlobalSearch.d.ts +3 -0
- package/dist/esm/foundation/GlobalSearch.d.ts.map +1 -0
- package/dist/esm/foundation/GlobalSearch.js +52 -0
- package/dist/esm/foundation/GlobalSearch.js.map +1 -0
- package/dist/esm/foundation/KanbanBoard.d.ts +3 -0
- package/dist/esm/foundation/KanbanBoard.d.ts.map +1 -0
- package/dist/esm/foundation/KanbanBoard.js +220 -0
- package/dist/esm/foundation/KanbanBoard.js.map +1 -0
- package/dist/esm/foundation/NotificationsButton.d.ts +3 -0
- package/dist/esm/foundation/NotificationsButton.d.ts.map +1 -0
- package/dist/esm/foundation/NotificationsButton.js +43 -0
- package/dist/esm/foundation/NotificationsButton.js.map +1 -0
- package/dist/esm/foundation/SubNavigation.d.ts +3 -0
- package/dist/esm/foundation/SubNavigation.d.ts.map +1 -0
- package/dist/esm/foundation/SubNavigation.js +70 -0
- package/dist/esm/foundation/SubNavigation.js.map +1 -0
- package/dist/esm/foundation/TabSet.d.ts +3 -0
- package/dist/esm/foundation/TabSet.d.ts.map +1 -0
- package/dist/esm/foundation/TabSet.js +99 -0
- package/dist/esm/foundation/TabSet.js.map +1 -0
- package/dist/esm/foundation/WizardProgress.d.ts +3 -0
- package/dist/esm/foundation/WizardProgress.d.ts.map +1 -0
- package/dist/esm/foundation/WizardProgress.js +183 -0
- package/dist/esm/foundation/WizardProgress.js.map +1 -0
- package/dist/esm/foundation/boardModel.d.ts +22 -0
- package/dist/esm/foundation/boardModel.d.ts.map +1 -0
- package/dist/esm/foundation/boardModel.js +61 -0
- package/dist/esm/foundation/boardModel.js.map +1 -0
- package/dist/esm/foundation/formModel.d.ts +48 -0
- package/dist/esm/foundation/formModel.d.ts.map +1 -0
- package/dist/esm/foundation/formModel.js +147 -0
- package/dist/esm/foundation/formModel.js.map +1 -0
- package/dist/esm/foundation/foundationComponentMetadata.d.ts.map +1 -1
- package/dist/esm/foundation/foundationComponentMetadata.js +54 -0
- package/dist/esm/foundation/foundationComponentMetadata.js.map +1 -1
- package/dist/esm/foundation/foundationDescriptors.d.ts.map +1 -1
- package/dist/esm/foundation/foundationDescriptors.js +400 -0
- package/dist/esm/foundation/foundationDescriptors.js.map +1 -1
- package/dist/esm/foundation/foundationSamples.d.ts.map +1 -1
- package/dist/esm/foundation/foundationSamples.js +303 -0
- package/dist/esm/foundation/foundationSamples.js.map +1 -1
- package/dist/esm/foundation/foundationStrings.d.ts +72 -0
- package/dist/esm/foundation/foundationStrings.d.ts.map +1 -1
- package/dist/esm/foundation/foundationStrings.js +72 -0
- package/dist/esm/foundation/foundationStrings.js.map +1 -1
- package/dist/esm/foundation/index.d.ts +16 -0
- package/dist/esm/foundation/index.d.ts.map +1 -1
- package/dist/esm/foundation/index.js +16 -0
- package/dist/esm/foundation/index.js.map +1 -1
- package/dist/esm/foundation/listModel.d.ts +49 -0
- package/dist/esm/foundation/listModel.d.ts.map +1 -0
- package/dist/esm/foundation/listModel.js +183 -0
- package/dist/esm/foundation/listModel.js.map +1 -0
- package/dist/esm/foundation/tabModel.d.ts +10 -0
- package/dist/esm/foundation/tabModel.d.ts.map +1 -0
- package/dist/esm/foundation/tabModel.js +37 -0
- package/dist/esm/foundation/tabModel.js.map +1 -0
- package/dist/esm/foundation/urlState.d.ts +4 -0
- package/dist/esm/foundation/urlState.d.ts.map +1 -0
- package/dist/esm/foundation/urlState.js +53 -0
- package/dist/esm/foundation/urlState.js.map +1 -0
- package/dist/esm/foundation/useCompactWidth.d.ts +3 -0
- package/dist/esm/foundation/useCompactWidth.d.ts.map +1 -0
- package/dist/esm/foundation/useCompactWidth.js +20 -0
- package/dist/esm/foundation/useCompactWidth.js.map +1 -0
- package/dist/esm/foundation/wizardModel.d.ts +16 -0
- package/dist/esm/foundation/wizardModel.d.ts.map +1 -0
- package/dist/esm/foundation/wizardModel.js +43 -0
- package/dist/esm/foundation/wizardModel.js.map +1 -0
- package/dist/esm/index.js +16 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/foundation/BulkBar.tsx +38 -0
- package/foundation/DataList.tsx +208 -0
- package/foundation/FormScreenBody.tsx +196 -0
- package/foundation/FoundationStates.tsx +1 -1
- package/foundation/GlobalSearch.tsx +33 -0
- package/foundation/KanbanBoard.tsx +97 -0
- package/foundation/NotificationsButton.tsx +28 -0
- package/foundation/SubNavigation.tsx +49 -0
- package/foundation/TabSet.tsx +65 -0
- package/foundation/WizardProgress.tsx +109 -0
- package/foundation/boardModel.ts +64 -0
- package/foundation/formModel.ts +146 -0
- package/foundation/foundationComponentMetadata.ts +9 -0
- package/foundation/foundationDescriptors.ts +195 -0
- package/foundation/foundationSamples.ts +56 -0
- package/foundation/foundationStrings.ts +72 -0
- package/foundation/index.ts +16 -0
- package/foundation/listModel.ts +190 -0
- package/foundation/tabModel.ts +41 -0
- package/foundation/urlState.ts +52 -0
- package/foundation/useCompactWidth.ts +23 -0
- package/foundation/wizardModel.ts +54 -0
- package/package.json +8 -8
- package/shell/layout.css +513 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundationComponentMetadata.js","sources":["../../../foundation/foundationComponentMetadata.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { ComponentCategory } from '@cratis/scene.model';\nimport { ComponentMetadata, componentMetadata as m } from '@cratis/scene.react';\nimport { ComponentName } from '../ComponentName';\n\n/**\n * The category, icon, keywords and picker badge of every foundation component (CMP1), keyed by bare component name.\n * The names are those of `ComponentName`; the metadata of the rest of the package lives in `defaultBlueprintComponentMetadata`.\n */\nexport const foundationComponentMetadata: Record<string, ComponentMetadata> = {\n [ComponentName.EmptyState]: m('Empty state', ComponentCategory.Feedback, 'inbox', ['no data', 'nothing', 'blank slate', 'zero state']),\n [ComponentName.StatCard]: m('Stat card', ComponentCategory.DataDisplay, 'gauge', ['kpi', 'metric', 'figure', 'number', 'dashboard']),\n [ComponentName.TrendChip]: m('Trend chip', ComponentCategory.DataDisplay, 'trending-up', ['delta', 'change', 'arrow', 'comparison']),\n [ComponentName.StatusChip]: m('Status chip', ComponentCategory.DataDisplay, 'badge-check', ['badge', 'state', 'tag', 'label']),\n [ComponentName.ChartWrapper]: m('Chart', ComponentCategory.DataDisplay, 'chart-line', ['graph', 'line', 'bar', 'stacked', 'donut', 'pie', 'funnel', 'plot']),\n [ComponentName.FilterBuilder]: m('Filter builder', ComponentCategory.Input, 'list-filter', ['filter', 'query', 'conditions', 'and or', 'search']),\n [ComponentName.ColumnChooser]: m('Column chooser', ComponentCategory.Actions, 'columns-3', ['columns', 'fields', 'show hide', 'table']),\n [ComponentName.SavedViewsMenu]: m('Saved views menu', ComponentCategory.Actions, 'bookmark', ['views', 'presets', 'saved filters']),\n [ComponentName.ChecklistSection]: m('Checklist', ComponentCategory.DataDisplay, 'list-checks', ['tasks', 'todo', 'onboarding', 'progress', 'steps']),\n [ComponentName.ActivityFeed]: m('Activity feed', ComponentCategory.DataDisplay, 'activity', ['timeline', 'history', 'comments', 'audit', 'log']),\n [ComponentName.AvatarStack]: m('Avatar stack', ComponentCategory.DataDisplay, 'users', ['people', 'members', 'assignees', 'team']),\n [ComponentName.FileUploader]: m('File uploader', ComponentCategory.Input, 'upload', ['attachments', 'files', 'drop zone', 'documents']),\n [ComponentName.ApprovalChainStepper]: m('Approval chain', ComponentCategory.Navigation, 'workflow', ['approvals', 'steps', 'workflow', 'sign off', 'stepper']),\n [ComponentName.OrgTree]: m('Org tree', ComponentCategory.DataDisplay, 'network', ['organization', 'hierarchy', 'org chart', 'reports to', 'tree']),\n [ComponentName.PermissionMatrix]: m('Permission matrix', ComponentCategory.Input, 'shield-check', ['roles', 'permissions', 'access', 'grants', 'rbac']),\n};\n"],"names":["foundationComponentMetadata","ComponentName","EmptyState","m","ComponentCategory","Feedback","StatCard","DataDisplay","TrendChip","StatusChip","ChartWrapper","FilterBuilder","Input","ColumnChooser","Actions","SavedViewsMenu","ChecklistSection","ActivityFeed","AvatarStack","FileUploader","ApprovalChainStepper","Navigation","OrgTree","PermissionMatrix"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"foundationComponentMetadata.js","sources":["../../../foundation/foundationComponentMetadata.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { ComponentCategory } from '@cratis/scene.model';\nimport { ComponentMetadata, componentMetadata as m } from '@cratis/scene.react';\nimport { ComponentName } from '../ComponentName';\n\n/**\n * The category, icon, keywords and picker badge of every foundation component (CMP1), keyed by bare component name.\n * The names are those of `ComponentName`; the metadata of the rest of the package lives in `defaultBlueprintComponentMetadata`.\n */\nexport const foundationComponentMetadata: Record<string, ComponentMetadata> = {\n [ComponentName.EmptyState]: m('Empty state', ComponentCategory.Feedback, 'inbox', ['no data', 'nothing', 'blank slate', 'zero state']),\n [ComponentName.StatCard]: m('Stat card', ComponentCategory.DataDisplay, 'gauge', ['kpi', 'metric', 'figure', 'number', 'dashboard']),\n [ComponentName.TrendChip]: m('Trend chip', ComponentCategory.DataDisplay, 'trending-up', ['delta', 'change', 'arrow', 'comparison']),\n [ComponentName.StatusChip]: m('Status chip', ComponentCategory.DataDisplay, 'badge-check', ['badge', 'state', 'tag', 'label']),\n [ComponentName.ChartWrapper]: m('Chart', ComponentCategory.DataDisplay, 'chart-line', ['graph', 'line', 'bar', 'stacked', 'donut', 'pie', 'funnel', 'plot']),\n [ComponentName.FilterBuilder]: m('Filter builder', ComponentCategory.Input, 'list-filter', ['filter', 'query', 'conditions', 'and or', 'search']),\n [ComponentName.ColumnChooser]: m('Column chooser', ComponentCategory.Actions, 'columns-3', ['columns', 'fields', 'show hide', 'table']),\n [ComponentName.SavedViewsMenu]: m('Saved views menu', ComponentCategory.Actions, 'bookmark', ['views', 'presets', 'saved filters']),\n [ComponentName.ChecklistSection]: m('Checklist', ComponentCategory.DataDisplay, 'list-checks', ['tasks', 'todo', 'onboarding', 'progress', 'steps']),\n [ComponentName.ActivityFeed]: m('Activity feed', ComponentCategory.DataDisplay, 'activity', ['timeline', 'history', 'comments', 'audit', 'log']),\n [ComponentName.AvatarStack]: m('Avatar stack', ComponentCategory.DataDisplay, 'users', ['people', 'members', 'assignees', 'team']),\n [ComponentName.FileUploader]: m('File uploader', ComponentCategory.Input, 'upload', ['attachments', 'files', 'drop zone', 'documents']),\n [ComponentName.ApprovalChainStepper]: m('Approval chain', ComponentCategory.Navigation, 'workflow', ['approvals', 'steps', 'workflow', 'sign off', 'stepper']),\n [ComponentName.OrgTree]: m('Org tree', ComponentCategory.DataDisplay, 'network', ['organization', 'hierarchy', 'org chart', 'reports to', 'tree']),\n [ComponentName.PermissionMatrix]: m('Permission matrix', ComponentCategory.Input, 'shield-check', ['roles', 'permissions', 'access', 'grants', 'rbac']),\n [ComponentName.DataList]: m('Data list', ComponentCategory.DataDisplay, 'table', ['table', 'grid', 'records', 'cards', 'collection', 'list']),\n [ComponentName.TabSet]: m('Tab set', ComponentCategory.Navigation, 'panel-top', ['tabs', 'sections', 'panels']),\n [ComponentName.SubNavigation]: m('Sub-navigation', ComponentCategory.Navigation, 'panel-left', ['module', 'sections', 'rail', 'tabs']),\n [ComponentName.BulkBar]: m('Bulk bar', ComponentCategory.Actions, 'check-check', ['selection', 'bulk', 'batch', 'actions']),\n [ComponentName.GlobalSearch]: m('Search', ComponentCategory.Input, 'search', ['search', 'find', 'query']),\n [ComponentName.NotificationsButton]: m('Notifications button', ComponentCategory.Actions, 'bell', ['bell', 'alerts', 'unread']),\n [ComponentName.KanbanBoard]: m('Kanban board', ComponentCategory.DataDisplay, 'kanban', ['board', 'kanban', 'columns', 'pipeline', 'cards']),\n [ComponentName.WizardProgress]: m('Wizard', ComponentCategory.Navigation, 'footprints', ['wizard', 'steps', 'stepper', 'multi-step']),\n [ComponentName.FormScreenBody]: m('Form', ComponentCategory.Forms, 'text-cursor-input', ['form', 'fields', 'sections', 'validation']),\n};\n"],"names":["foundationComponentMetadata","ComponentName","EmptyState","m","ComponentCategory","Feedback","StatCard","DataDisplay","TrendChip","StatusChip","ChartWrapper","FilterBuilder","Input","ColumnChooser","Actions","SavedViewsMenu","ChecklistSection","ActivityFeed","AvatarStack","FileUploader","ApprovalChainStepper","Navigation","OrgTree","PermissionMatrix","DataList","TabSet","SubNavigation","BulkBar","GlobalSearch","NotificationsButton","KanbanBoard","WizardProgress","FormScreenBody","Forms"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundationDescriptors.d.ts","sourceRoot":"","sources":["../../../foundation/foundationDescriptors.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,kBAAkB,EAAyC,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"foundationDescriptors.d.ts","sourceRoot":"","sources":["../../../foundation/foundationDescriptors.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,kBAAkB,EAAyC,MAAM,qBAAqB,CAAC;AAgBxI,eAAO,MAAM,QAAQ,qBAAsG,CAAC;AAiB5H,eAAO,MAAM,IAAI,SAAU,MAAM,SAAS,MAAM,SAAS,MAAM,aAAa,MAAM,cAAc,kBAAkB,EAAE,gBAAgB,MAAM,KAAG,kBACoC,CAAC;AAMlL,eAAO,MAAM,uBAAuB,EAAE,kBAAkB,EAkBvD,CAAC;AAOF,eAAO,MAAM,qBAAqB,EAAE,mBAAmB,EAketD,CAAC"}
|
|
@@ -4,6 +4,8 @@ import { ComponentName } from '../ComponentName.js';
|
|
|
4
4
|
import { defaultBlueprintName } from '../packageName.js';
|
|
5
5
|
import { ActivityKind } from './activityModel.js';
|
|
6
6
|
import { ApprovalState } from './approvalModel.js';
|
|
7
|
+
import { CellKind, ListVariant } from './listModel.js';
|
|
8
|
+
import { FormFieldType, FormMode } from './formModel.js';
|
|
7
9
|
import { ChartKind } from './chartGeometry.js';
|
|
8
10
|
import { ComponentState } from './ComponentState.js';
|
|
9
11
|
import { FilterFieldType } from './filterModel.js';
|
|
@@ -619,6 +621,404 @@ const formats = {
|
|
|
619
621
|
valueOutputProperty(PropertyValueType.Json, 'The grants as the user has changed them: rows of role and permission, published as they change.'),
|
|
620
622
|
...standardStateProperties
|
|
621
623
|
]
|
|
624
|
+
},
|
|
625
|
+
{
|
|
626
|
+
component: key(ComponentName.DataList),
|
|
627
|
+
displayName: 'Data list',
|
|
628
|
+
description: 'The records of a collection as a table, as cards or grouped with subtotals, with search, sort, paging and selection that live in the address. On a phone a table becomes cards.',
|
|
629
|
+
properties: [
|
|
630
|
+
{
|
|
631
|
+
path: 'rows',
|
|
632
|
+
label: 'Rows',
|
|
633
|
+
group: 'Data',
|
|
634
|
+
valueType: PropertyValueType.Json,
|
|
635
|
+
acceptedBindingKinds: bindable,
|
|
636
|
+
default: [],
|
|
637
|
+
description: 'The records; bind to a query result.'
|
|
638
|
+
},
|
|
639
|
+
{
|
|
640
|
+
...list('columns', 'Columns', 'Data', 'Column', [
|
|
641
|
+
text('field', 'Field', 'Data', 'The result field the column shows.', {
|
|
642
|
+
constraints: {
|
|
643
|
+
required: true
|
|
644
|
+
},
|
|
645
|
+
editorKind: PropertyEditorKind.Field
|
|
646
|
+
}),
|
|
647
|
+
text('header', 'Header', 'Content'),
|
|
648
|
+
choice('kind', 'Kind', 'Appearance', {
|
|
649
|
+
[CellKind.Text]: 'Text',
|
|
650
|
+
[CellKind.Number]: 'Number',
|
|
651
|
+
[CellKind.Currency]: 'Currency',
|
|
652
|
+
[CellKind.Date]: 'Date',
|
|
653
|
+
[CellKind.Status]: 'Status'
|
|
654
|
+
}, CellKind.Text),
|
|
655
|
+
flag('sortable', 'Sortable', 'Behavior', undefined, {
|
|
656
|
+
default: true
|
|
657
|
+
}),
|
|
658
|
+
text('currency', 'Currency', 'Appearance'),
|
|
659
|
+
{
|
|
660
|
+
path: 'tones',
|
|
661
|
+
label: 'Status tones',
|
|
662
|
+
group: 'Appearance',
|
|
663
|
+
valueType: PropertyValueType.Object,
|
|
664
|
+
editorKind: PropertyEditorKind.StringMap,
|
|
665
|
+
description: 'The tone (success, warning, danger, info, neutral) of each status value.'
|
|
666
|
+
}
|
|
667
|
+
], 'What is shown.'),
|
|
668
|
+
acceptedBindingKinds: bindable
|
|
669
|
+
},
|
|
670
|
+
choice('variant', 'Layout', 'Appearance', {
|
|
671
|
+
[ListVariant.Table]: 'Table',
|
|
672
|
+
[ListVariant.Cards]: 'Cards',
|
|
673
|
+
[ListVariant.Grouped]: 'Grouped'
|
|
674
|
+
}, ListVariant.Table),
|
|
675
|
+
flag('collapse', 'Cards on a phone', 'Appearance', 'A table becomes cards on a phone-wide screen; nothing is hidden.', {
|
|
676
|
+
default: true
|
|
677
|
+
}),
|
|
678
|
+
text('idField', 'Id field', 'Data', undefined, {
|
|
679
|
+
default: 'id',
|
|
680
|
+
editorKind: PropertyEditorKind.Field
|
|
681
|
+
}),
|
|
682
|
+
text('titleField', 'Title field', 'Data', 'The field that names a row for assistive technology and a card.', {
|
|
683
|
+
editorKind: PropertyEditorKind.Field
|
|
684
|
+
}),
|
|
685
|
+
text('groupBy', 'Group by', 'Data', undefined, {
|
|
686
|
+
editorKind: PropertyEditorKind.Field
|
|
687
|
+
}),
|
|
688
|
+
text('totalField', 'Subtotal field', 'Data', undefined, {
|
|
689
|
+
editorKind: PropertyEditorKind.Field
|
|
690
|
+
}),
|
|
691
|
+
number('pageSize', 'Rows per page', 'Behavior', '0 shows every row.', {
|
|
692
|
+
default: 0,
|
|
693
|
+
constraints: {
|
|
694
|
+
minimum: 0,
|
|
695
|
+
integer: true
|
|
696
|
+
}
|
|
697
|
+
}),
|
|
698
|
+
choice('selectionMode', 'Selection', 'Behavior', {
|
|
699
|
+
none: 'None',
|
|
700
|
+
single: 'One row',
|
|
701
|
+
multiple: 'Many rows'
|
|
702
|
+
}, 'none'),
|
|
703
|
+
{
|
|
704
|
+
path: 'rowActions',
|
|
705
|
+
label: 'Row actions',
|
|
706
|
+
group: 'Behavior',
|
|
707
|
+
valueType: PropertyValueType.Json,
|
|
708
|
+
editorKind: PropertyEditorKind.StringList,
|
|
709
|
+
default: [],
|
|
710
|
+
description: 'The actions in each row\'s menu; each is the action output.'
|
|
711
|
+
},
|
|
712
|
+
rule('actionPermission', 'Row action permission', 'Whether row actions work, refuse with a reason or are not shown.'),
|
|
713
|
+
text('search', 'Search', 'Data', 'The search text; bind to the search box output.', {
|
|
714
|
+
acceptedBindingKinds: bindable
|
|
715
|
+
}),
|
|
716
|
+
{
|
|
717
|
+
path: 'filter',
|
|
718
|
+
label: 'Filter',
|
|
719
|
+
group: 'Data',
|
|
720
|
+
valueType: PropertyValueType.Object,
|
|
721
|
+
acceptedBindingKinds: bindable,
|
|
722
|
+
description: 'The filter builder\'s value.'
|
|
723
|
+
},
|
|
724
|
+
text('sort', 'Sort', 'Data', 'The sorted field; a leading - is descending.'),
|
|
725
|
+
text('urlKey', 'Address prefix', 'Behavior', 'Keeps search, sort, page and selection in the address under this prefix.'),
|
|
726
|
+
valueOutputProperty(PropertyValueType.Json, 'The selected row id (single) or ids (many).'),
|
|
727
|
+
{
|
|
728
|
+
path: 'action',
|
|
729
|
+
label: 'Requested action',
|
|
730
|
+
group: 'Outputs',
|
|
731
|
+
valueType: PropertyValueType.Json,
|
|
732
|
+
readOnly: true,
|
|
733
|
+
output: true,
|
|
734
|
+
description: 'The row action the user chose, with its row id.'
|
|
735
|
+
},
|
|
736
|
+
...standardStateProperties.filter((property)=>property.path !== 'actionPermission')
|
|
737
|
+
]
|
|
738
|
+
},
|
|
739
|
+
{
|
|
740
|
+
component: key(ComponentName.TabSet),
|
|
741
|
+
displayName: 'Tab set',
|
|
742
|
+
description: 'Tabs with a panel for each: the content of tab `overview` is the slot `overview`. The active tab is kept in the address.',
|
|
743
|
+
properties: [
|
|
744
|
+
{
|
|
745
|
+
...list('tabs', 'Tabs', 'Data', 'Tab', [
|
|
746
|
+
text('id', 'Id', 'Data', 'Also the name of the slot that holds the tab\'s content.', {
|
|
747
|
+
constraints: {
|
|
748
|
+
required: true
|
|
749
|
+
}
|
|
750
|
+
}),
|
|
751
|
+
text('label', 'Label', 'Content'),
|
|
752
|
+
text('badge', 'Count', 'Content'),
|
|
753
|
+
flag('disabled', 'Disabled', 'Behavior')
|
|
754
|
+
], 'The tabs a record page offers.'),
|
|
755
|
+
acceptedBindingKinds: bindable
|
|
756
|
+
},
|
|
757
|
+
text('activeTab', 'Active tab', 'Behavior'),
|
|
758
|
+
text('urlKey', 'Address parameter', 'Behavior', 'Keeps the active tab in the address under this name.'),
|
|
759
|
+
text('label', 'Label', 'Accessibility'),
|
|
760
|
+
valueOutputProperty(PropertyValueType.String, 'The id of the active tab.'),
|
|
761
|
+
...standardStateProperties.filter((property)=>property.path !== 'label')
|
|
762
|
+
]
|
|
763
|
+
},
|
|
764
|
+
{
|
|
765
|
+
component: key(ComponentName.SubNavigation),
|
|
766
|
+
displayName: 'Sub-navigation',
|
|
767
|
+
description: 'A module\'s own sections as a tab bar or a left rail. Choosing one changes only the section.',
|
|
768
|
+
properties: [
|
|
769
|
+
{
|
|
770
|
+
...list('items', 'Sections', 'Data', 'Section', [
|
|
771
|
+
text('id', 'Id', 'Data', undefined, {
|
|
772
|
+
constraints: {
|
|
773
|
+
required: true
|
|
774
|
+
}
|
|
775
|
+
}),
|
|
776
|
+
text('label', 'Label', 'Content'),
|
|
777
|
+
text('badge', 'Count', 'Content'),
|
|
778
|
+
flag('disabled', 'Disabled', 'Behavior')
|
|
779
|
+
], 'The sections.'),
|
|
780
|
+
acceptedBindingKinds: bindable
|
|
781
|
+
},
|
|
782
|
+
choice('orientation', 'Orientation', 'Appearance', {
|
|
783
|
+
horizontal: 'Tabs',
|
|
784
|
+
vertical: 'Left rail'
|
|
785
|
+
}, 'horizontal'),
|
|
786
|
+
text('activeItem', 'Active section', 'Behavior'),
|
|
787
|
+
text('urlKey', 'Address parameter', 'Behavior'),
|
|
788
|
+
text('label', 'Label', 'Accessibility'),
|
|
789
|
+
valueOutputProperty(PropertyValueType.String, 'The id of the active section.'),
|
|
790
|
+
...standardStateProperties.filter((property)=>property.path !== 'label')
|
|
791
|
+
]
|
|
792
|
+
},
|
|
793
|
+
{
|
|
794
|
+
component: key(ComponentName.BulkBar),
|
|
795
|
+
displayName: 'Bulk bar',
|
|
796
|
+
description: 'Appears when records are selected, says how many, offers the bulk actions and clears the selection.',
|
|
797
|
+
properties: [
|
|
798
|
+
{
|
|
799
|
+
path: 'selection',
|
|
800
|
+
label: 'Selection',
|
|
801
|
+
group: 'Data',
|
|
802
|
+
valueType: PropertyValueType.Json,
|
|
803
|
+
acceptedBindingKinds: bindable,
|
|
804
|
+
description: 'The selected records or their count; bind to the list\'s value.'
|
|
805
|
+
},
|
|
806
|
+
{
|
|
807
|
+
path: 'actions',
|
|
808
|
+
label: 'Actions',
|
|
809
|
+
group: 'Behavior',
|
|
810
|
+
valueType: PropertyValueType.Json,
|
|
811
|
+
editorKind: PropertyEditorKind.StringList,
|
|
812
|
+
default: []
|
|
813
|
+
},
|
|
814
|
+
rule('actionPermission', 'Action permission', 'Whether the bulk actions work, refuse with a reason or are not shown.'),
|
|
815
|
+
text('locale', 'Locale', 'Content'),
|
|
816
|
+
{
|
|
817
|
+
path: 'strings',
|
|
818
|
+
label: 'Text overrides',
|
|
819
|
+
group: 'Content',
|
|
820
|
+
valueType: PropertyValueType.Object,
|
|
821
|
+
editorKind: PropertyEditorKind.StringMap
|
|
822
|
+
}
|
|
823
|
+
]
|
|
824
|
+
},
|
|
825
|
+
{
|
|
826
|
+
component: key(ComponentName.GlobalSearch),
|
|
827
|
+
displayName: 'Search',
|
|
828
|
+
description: 'A search box for the topbar or a list\'s toolbar. The text is the value output and can live in the address.',
|
|
829
|
+
properties: [
|
|
830
|
+
text('text', 'Initial text', 'Data'),
|
|
831
|
+
text('placeholder', 'Placeholder', 'Content'),
|
|
832
|
+
text('label', 'Label', 'Accessibility'),
|
|
833
|
+
text('urlKey', 'Address parameter', 'Behavior'),
|
|
834
|
+
valueOutputProperty(PropertyValueType.String, 'The search text.'),
|
|
835
|
+
{
|
|
836
|
+
path: 'strings',
|
|
837
|
+
label: 'Text overrides',
|
|
838
|
+
group: 'Content',
|
|
839
|
+
valueType: PropertyValueType.Object,
|
|
840
|
+
editorKind: PropertyEditorKind.StringMap
|
|
841
|
+
}
|
|
842
|
+
]
|
|
843
|
+
},
|
|
844
|
+
{
|
|
845
|
+
component: key(ComponentName.NotificationsButton),
|
|
846
|
+
displayName: 'Notifications button',
|
|
847
|
+
description: 'The bell of the topbar with the unread count, said in words as well as in the badge.',
|
|
848
|
+
properties: [
|
|
849
|
+
number('count', 'Unread', 'Data', 'Bind to a query result.', {
|
|
850
|
+
constraints: {
|
|
851
|
+
minimum: 0,
|
|
852
|
+
integer: true
|
|
853
|
+
}
|
|
854
|
+
}),
|
|
855
|
+
text('locale', 'Locale', 'Content'),
|
|
856
|
+
{
|
|
857
|
+
path: 'strings',
|
|
858
|
+
label: 'Text overrides',
|
|
859
|
+
group: 'Content',
|
|
860
|
+
valueType: PropertyValueType.Object,
|
|
861
|
+
editorKind: PropertyEditorKind.StringMap
|
|
862
|
+
}
|
|
863
|
+
]
|
|
864
|
+
},
|
|
865
|
+
{
|
|
866
|
+
component: key(ComponentName.KanbanBoard),
|
|
867
|
+
displayName: 'Kanban board',
|
|
868
|
+
description: 'Columns mapped to a status, with cards that move by dragging or by their own Move-to menu. The new arrangement is the value output.',
|
|
869
|
+
properties: [
|
|
870
|
+
{
|
|
871
|
+
...list('columns', 'Columns', 'Data', 'Column', [
|
|
872
|
+
text('id', 'Id', 'Data', 'The status or stage value.', {
|
|
873
|
+
constraints: {
|
|
874
|
+
required: true
|
|
875
|
+
}
|
|
876
|
+
}),
|
|
877
|
+
text('label', 'Label', 'Content'),
|
|
878
|
+
number('limit', 'Limit', 'Behavior', 'The most cards the stage should hold; 0 is no limit.', {
|
|
879
|
+
constraints: {
|
|
880
|
+
minimum: 0,
|
|
881
|
+
integer: true
|
|
882
|
+
}
|
|
883
|
+
})
|
|
884
|
+
], 'The stages.'),
|
|
885
|
+
acceptedBindingKinds: bindable
|
|
886
|
+
},
|
|
887
|
+
{
|
|
888
|
+
...list('cards', 'Cards', 'Data', 'Card', [
|
|
889
|
+
text('id', 'Id', 'Data', undefined, {
|
|
890
|
+
constraints: {
|
|
891
|
+
required: true
|
|
892
|
+
}
|
|
893
|
+
}),
|
|
894
|
+
text('title', 'Title', 'Data', undefined, {
|
|
895
|
+
constraints: {
|
|
896
|
+
required: true
|
|
897
|
+
}
|
|
898
|
+
}),
|
|
899
|
+
text('column', 'Column', 'Data', 'The id of the column the card is in.'),
|
|
900
|
+
text('assignee', 'Assignee', 'Data'),
|
|
901
|
+
{
|
|
902
|
+
path: 'badges',
|
|
903
|
+
label: 'Badges',
|
|
904
|
+
group: 'Data',
|
|
905
|
+
valueType: PropertyValueType.Json,
|
|
906
|
+
editorKind: PropertyEditorKind.StringList,
|
|
907
|
+
default: []
|
|
908
|
+
}
|
|
909
|
+
], 'The cards, from a query.'),
|
|
910
|
+
acceptedBindingKinds: bindable
|
|
911
|
+
},
|
|
912
|
+
rule('editPermission', 'Move permission', 'Enabled lets cards move; otherwise the board is read-only.'),
|
|
913
|
+
valueOutputProperty(PropertyValueType.Json, 'Each card\'s id and column, published as cards move.'),
|
|
914
|
+
...standardStateProperties
|
|
915
|
+
]
|
|
916
|
+
},
|
|
917
|
+
{
|
|
918
|
+
component: key(ComponentName.WizardProgress),
|
|
919
|
+
displayName: 'Wizard',
|
|
920
|
+
description: 'A linear wizard: the steps, back/next/finish and the draft save. The content of step `details` is the slot `details`; the last step is the review.',
|
|
921
|
+
properties: [
|
|
922
|
+
{
|
|
923
|
+
...list('steps', 'Steps', 'Data', 'Step', [
|
|
924
|
+
text('id', 'Id', 'Data', 'Also the name of the slot that holds the step\'s content.', {
|
|
925
|
+
constraints: {
|
|
926
|
+
required: true
|
|
927
|
+
}
|
|
928
|
+
}),
|
|
929
|
+
text('label', 'Label', 'Content'),
|
|
930
|
+
flag('valid', 'Valid', 'Data', 'Whether the step\'s fields are valid; an invalid step blocks Next.', {
|
|
931
|
+
default: true,
|
|
932
|
+
acceptedBindingKinds: bindable
|
|
933
|
+
})
|
|
934
|
+
], 'The steps in order.'),
|
|
935
|
+
acceptedBindingKinds: bindable
|
|
936
|
+
},
|
|
937
|
+
text('currentStep', 'Current step', 'Behavior'),
|
|
938
|
+
text('urlKey', 'Address parameter', 'Behavior', 'Keeps the current step in the address so a refresh resumes.'),
|
|
939
|
+
valueOutputProperty(PropertyValueType.String, 'The id of the current step.'),
|
|
940
|
+
...standardStateProperties
|
|
941
|
+
]
|
|
942
|
+
},
|
|
943
|
+
{
|
|
944
|
+
component: key(ComponentName.FormScreenBody),
|
|
945
|
+
displayName: 'Form',
|
|
946
|
+
description: 'Titled sections of fields in a one-to-three column grid, with inline validation, a save bar, the unsaved-changes guard and four modes.',
|
|
947
|
+
properties: [
|
|
948
|
+
{
|
|
949
|
+
...list('sections', 'Sections', 'Data', 'Section', [
|
|
950
|
+
text('id', 'Id', 'Data'),
|
|
951
|
+
text('title', 'Title', 'Content'),
|
|
952
|
+
number('columns', 'Columns', 'Appearance', undefined, {
|
|
953
|
+
default: 1,
|
|
954
|
+
constraints: {
|
|
955
|
+
minimum: 1,
|
|
956
|
+
maximum: 3,
|
|
957
|
+
integer: true
|
|
958
|
+
}
|
|
959
|
+
}),
|
|
960
|
+
list('fields', 'Fields', 'Data', 'Field', [
|
|
961
|
+
text('name', 'Name', 'Data', undefined, {
|
|
962
|
+
constraints: {
|
|
963
|
+
required: true
|
|
964
|
+
},
|
|
965
|
+
editorKind: PropertyEditorKind.Field
|
|
966
|
+
}),
|
|
967
|
+
text('label', 'Label', 'Content'),
|
|
968
|
+
choice('type', 'Type', 'Data', Object.fromEntries(Object.values(FormFieldType).map((type)=>[
|
|
969
|
+
type,
|
|
970
|
+
type
|
|
971
|
+
])), FormFieldType.Text),
|
|
972
|
+
flag('required', 'Required', 'Data'),
|
|
973
|
+
{
|
|
974
|
+
path: 'options',
|
|
975
|
+
label: 'Options',
|
|
976
|
+
group: 'Data',
|
|
977
|
+
valueType: PropertyValueType.Json,
|
|
978
|
+
editorKind: PropertyEditorKind.StringList,
|
|
979
|
+
default: []
|
|
980
|
+
},
|
|
981
|
+
number('span', 'Columns spanned', 'Appearance', undefined, {
|
|
982
|
+
default: 1,
|
|
983
|
+
constraints: {
|
|
984
|
+
minimum: 1,
|
|
985
|
+
maximum: 3,
|
|
986
|
+
integer: true
|
|
987
|
+
}
|
|
988
|
+
}),
|
|
989
|
+
text('placeholder', 'Placeholder', 'Content'),
|
|
990
|
+
text('help', 'Help text', 'Content')
|
|
991
|
+
])
|
|
992
|
+
], 'The groups of fields.'),
|
|
993
|
+
acceptedBindingKinds: bindable
|
|
994
|
+
},
|
|
995
|
+
{
|
|
996
|
+
path: 'values',
|
|
997
|
+
label: 'Values',
|
|
998
|
+
group: 'Data',
|
|
999
|
+
valueType: PropertyValueType.Object,
|
|
1000
|
+
acceptedBindingKinds: bindable,
|
|
1001
|
+
description: 'The record being edited; empty when creating.'
|
|
1002
|
+
},
|
|
1003
|
+
{
|
|
1004
|
+
path: 'errors',
|
|
1005
|
+
label: 'Server errors',
|
|
1006
|
+
group: 'Data',
|
|
1007
|
+
valueType: PropertyValueType.Json,
|
|
1008
|
+
acceptedBindingKinds: bindable,
|
|
1009
|
+
description: 'Field errors from the server, as { field: message }; one for an unknown field is shown as a general error.'
|
|
1010
|
+
},
|
|
1011
|
+
choice('mode', 'Mode', 'Behavior', {
|
|
1012
|
+
[FormMode.Create]: 'Create',
|
|
1013
|
+
[FormMode.Edit]: 'Edit',
|
|
1014
|
+
[FormMode.ReadOnly]: 'Read-only',
|
|
1015
|
+
[FormMode.Settings]: 'Settings (a save for each section)'
|
|
1016
|
+
}, FormMode.Create),
|
|
1017
|
+
rule('editPermission', 'Edit permission', 'Enabled lets the user change fields; otherwise the form is read-only.'),
|
|
1018
|
+
rule('savePermission', 'Save permission', 'Whether Save works, refuses with a reason or is not shown.'),
|
|
1019
|
+
valueOutputProperty(PropertyValueType.Object, 'The values as the user has edited them.'),
|
|
1020
|
+
...standardStateProperties
|
|
1021
|
+
]
|
|
622
1022
|
}
|
|
623
1023
|
];
|
|
624
1024
|
|