@milaboratories/milaboratories.ui-examples.model 1.0.50 → 1.1.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/dist/index.cjs CHANGED
@@ -7,24 +7,34 @@ var zod = require('zod');
7
7
  var $BlockArgs = zod.z.object({
8
8
  numbers: zod.z.array(zod.z.coerce.number())
9
9
  });
10
- var platforma = model.BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3] }).withUiState({ dataTableState: void 0 }).output("numbers", (ctx) => ctx.outputs?.resolve("numbers")?.getDataAsJson()).retentiveOutput("inputOptions", (ctx) => {
11
- return ctx.resultPool.getOptions((spec) => model.isPColumnSpec(spec));
12
- }).output("sheets", (ctx) => {
13
- if (!ctx.uiState?.dataTableState?.anchorColumn) return void 0;
14
- const anchor = ctx.resultPool.getPColumnByRef(ctx.uiState.dataTableState.anchorColumn);
15
- if (!anchor) return void 0;
16
- const r = model.getUniquePartitionKeys(anchor.data);
17
- if (!r) return void 0;
18
- return r.map((values, i) => model.createPlDataTableSheet(ctx, anchor.spec.axesSpec[i], values));
19
- }).output("pt", (ctx) => {
20
- if (ctx.uiState?.dataTableState?.anchorColumn === void 0) return void 0;
21
- const anchorColumn = ctx.resultPool.getDataByRef(ctx.uiState.dataTableState.anchorColumn);
22
- if (!anchorColumn || !model.isPColumn(anchorColumn)) {
23
- console.error("Anchor column is undefined or is not PColumn", anchorColumn);
24
- return void 0;
25
- }
26
- if (ctx.uiState.dataTableState.tableState.pTableParams?.filters === void 0) return void 0;
27
- return model.createPlDataTable(ctx, [anchorColumn], ctx.uiState.dataTableState.tableState, [
10
+ var platforma = model.BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3] }).withUiState({ dataTableState: void 0 }).output("numbers", (ctx) => ctx.outputs?.resolve("numbers")?.getDataAsJson()).output("pt", (ctx) => {
11
+ if (!ctx.uiState?.dataTableState?.tableState.pTableParams?.filters) return void 0;
12
+ return model.createPlDataTable(ctx, [
13
+ {
14
+ id: "example",
15
+ spec: {
16
+ kind: "PColumn",
17
+ valueType: "String",
18
+ name: "example",
19
+ annotations: {
20
+ "pl7.app/label": "String column"
21
+ },
22
+ axesSpec: [
23
+ {
24
+ type: "Int",
25
+ name: "index",
26
+ annotations: {
27
+ "pl7.app/label": "Int axis"
28
+ }
29
+ }
30
+ ]
31
+ },
32
+ data: [
33
+ { key: [1], val: "1" },
34
+ { key: [2], val: "2" }
35
+ ]
36
+ }
37
+ ], ctx.uiState.dataTableState.tableState, [
28
38
  ...ctx.uiState.dataTableState.tableState.pTableParams?.filters,
29
39
  ...ctx.uiState.dataTableState.filterModel?.filters ?? []
30
40
  ]);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":["z","BlockModel","isPColumnSpec","getUniquePartitionKeys","createPlDataTableSheet","isPColumn","createPlDataTable"],"mappings":"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","file":"index.cjs","sourcesContent":["import {\n BlockModel,\n InferHrefType,\n InferOutputsType,\n PlDataTableState,\n ValueType,\n isPColumn,\n isPColumnSpec,\n PlRef,\n getUniquePartitionKeys,\n createPlDataTableSheet,\n createPlDataTable,\n PlTableFiltersModel\n} from '@platforma-sdk/model';\nimport { z } from 'zod';\n\nexport const $BlockArgs = z.object({\n numbers: z.array(z.coerce.number())\n});\n\nexport type BlockArgs = z.infer<typeof $BlockArgs>;\n\nexport type TableState = {\n tableState: PlDataTableState;\n anchorColumn?: PlRef;\n filterModel: PlTableFiltersModel;\n};\n\nexport type UiState = {\n dataTableState: TableState | undefined;\n};\n\nexport const platforma = BlockModel.create('Heavy')\n\n .withArgs<BlockArgs>({ numbers: [1, 2, 3] })\n\n .withUiState<UiState>({ dataTableState: undefined })\n\n .output('numbers', (ctx) => ctx.outputs?.resolve('numbers')?.getDataAsJson<number[]>())\n\n .retentiveOutput('inputOptions', (ctx) => {\n return ctx.resultPool.getOptions((spec) => isPColumnSpec(spec));\n })\n\n .output('sheets', (ctx) => {\n if (!ctx.uiState?.dataTableState?.anchorColumn) return undefined;\n\n const anchor = ctx.resultPool.getPColumnByRef(ctx.uiState.dataTableState.anchorColumn);\n if (!anchor) return undefined;\n\n const r = getUniquePartitionKeys(anchor.data);\n if (!r) return undefined;\n return r.map((values, i) => createPlDataTableSheet(ctx, anchor.spec.axesSpec[i], values));\n })\n\n .output('pt', (ctx) => {\n if (ctx.uiState?.dataTableState?.anchorColumn === undefined) return undefined;\n\n const anchorColumn = ctx.resultPool.getDataByRef(ctx.uiState.dataTableState.anchorColumn);\n if (!anchorColumn || !isPColumn(anchorColumn)) {\n console.error('Anchor column is undefined or is not PColumn', anchorColumn);\n return undefined;\n }\n\n // wait until sheet filters are set\n if (ctx.uiState.dataTableState.tableState.pTableParams?.filters === undefined) return undefined;\n\n return createPlDataTable(ctx, [anchorColumn], ctx.uiState.dataTableState.tableState, [\n ...ctx.uiState.dataTableState.tableState.pTableParams?.filters,\n ...(ctx.uiState.dataTableState.filterModel?.filters ?? [])\n ]);\n })\n\n .sections((ctx) => {\n return [\n { type: 'link', href: '/', label: 'Icons/Masks' },\n { type: 'link', href: '/layout', label: 'Layout' },\n { type: 'link', href: '/form-components', label: 'Form Components' },\n { type: 'link', href: '/log-view', label: 'PlLogView' },\n { type: 'link', href: '/modals', label: 'Modals' },\n { type: 'link', href: '/select-files', label: 'Select Files' },\n { type: 'link', href: '/inject-env', label: 'Inject env' },\n { type: 'link', href: '/dropdowns', label: 'Dropdowns' },\n { type: 'link', href: '/use-watch-fetch', label: 'useWatchFetch' },\n { type: 'link', href: '/typography', label: 'Typography' },\n { type: 'link', href: '/ag-grid-vue', label: 'AgGridVue' },\n { type: 'link', href: '/pl-ag-data-table', label: 'PlAgDataTable' },\n { type: 'link', href: '/errors', label: 'Errors' },\n { type: 'link', href: '/text-fields', label: 'PlTextField' },\n { type: 'link', href: '/tabs', label: 'PlTabs' },\n { type: 'link', href: '/drafts', label: 'Drafts' },\n { type: 'link', href: '/buttons', label: 'ButtonsPage' },\n ];\n })\n\n .done();\n\nexport type BlockOutputs = InferOutputsType<typeof platforma>;\nexport type Href = InferHrefType<typeof platforma>;\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":["z","BlockModel","createPlDataTable"],"mappings":"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","file":"index.cjs","sourcesContent":["import {\n BlockModel,\n InferHrefType,\n InferOutputsType,\n PlDataTableState,\n createPlDataTable,\n PlTableFiltersModel,\n PColumn,\n PColumnValues,\n PObjectId,\n} from '@platforma-sdk/model';\nimport { z } from 'zod';\n\nexport const $BlockArgs = z.object({\n numbers: z.array(z.coerce.number())\n});\n\nexport type BlockArgs = z.infer<typeof $BlockArgs>;\n\nexport type TableState = {\n tableState: PlDataTableState;\n filterModel: PlTableFiltersModel;\n};\n\nexport type UiState = {\n dataTableState: TableState | undefined;\n};\n\nexport const platforma = BlockModel.create('Heavy')\n\n .withArgs<BlockArgs>({ numbers: [1, 2, 3] })\n\n .withUiState<UiState>({ dataTableState: undefined })\n\n .output('numbers', (ctx) => ctx.outputs?.resolve('numbers')?.getDataAsJson<number[]>())\n\n .output('pt', (ctx) => {\n if (!ctx.uiState?.dataTableState?.tableState.pTableParams?.filters) return undefined;\n return createPlDataTable(ctx, [\n {\n id: \"example\" as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'String',\n name: 'example',\n annotations: {\n 'pl7.app/label': 'String column',\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'index',\n annotations: {\n 'pl7.app/label': 'Int axis',\n },\n }\n ]\n },\n data: [\n { key: [1], val: '1' },\n { key: [2], val: '2' }\n ]\n } satisfies PColumn<PColumnValues>\n ], ctx.uiState.dataTableState.tableState, [\n ...ctx.uiState.dataTableState.tableState.pTableParams?.filters,\n ...(ctx.uiState.dataTableState.filterModel?.filters ?? [])\n ]);\n })\n\n .sections((ctx) => {\n return [\n { type: 'link', href: '/', label: 'Icons/Masks' },\n { type: 'link', href: '/layout', label: 'Layout' },\n { type: 'link', href: '/form-components', label: 'Form Components' },\n { type: 'link', href: '/log-view', label: 'PlLogView' },\n { type: 'link', href: '/modals', label: 'Modals' },\n { type: 'link', href: '/select-files', label: 'Select Files' },\n { type: 'link', href: '/inject-env', label: 'Inject env' },\n { type: 'link', href: '/dropdowns', label: 'Dropdowns' },\n { type: 'link', href: '/use-watch-fetch', label: 'useWatchFetch' },\n { type: 'link', href: '/typography', label: 'Typography' },\n { type: 'link', href: '/ag-grid-vue', label: 'AgGridVue' },\n { type: 'link', href: '/pl-ag-data-table', label: 'PlAgDataTable' },\n { type: 'link', href: '/errors', label: 'Errors' },\n { type: 'link', href: '/text-fields', label: 'PlTextField' },\n { type: 'link', href: '/tabs', label: 'PlTabs' },\n { type: 'link', href: '/drafts', label: 'Drafts' },\n { type: 'link', href: '/buttons', label: 'ButtonsPage' },\n ];\n })\n\n .done();\n\nexport type BlockOutputs = InferOutputsType<typeof platforma>;\nexport type Href = InferHrefType<typeof platforma>;\n"]}
package/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _platforma_sdk_model from '@platforma-sdk/model';
2
- import { PlDataTableState, PlRef, PlTableFiltersModel, ValueType, InferOutputsType, InferHrefType } from '@platforma-sdk/model';
2
+ import { PlDataTableState, PlTableFiltersModel, InferOutputsType, InferHrefType } from '@platforma-sdk/model';
3
3
  import { z } from 'zod';
4
4
 
5
5
  declare const $BlockArgs: z.ZodObject<{
@@ -12,7 +12,6 @@ declare const $BlockArgs: z.ZodObject<{
12
12
  type BlockArgs = z.infer<typeof $BlockArgs>;
13
13
  type TableState = {
14
14
  tableState: PlDataTableState;
15
- anchorColumn?: PlRef;
16
15
  filterModel: PlTableFiltersModel;
17
16
  };
18
17
  type UiState = {
@@ -22,32 +21,6 @@ declare const platforma: _platforma_sdk_model.Platforma<{
22
21
  numbers: number[];
23
22
  }, {
24
23
  numbers: _platforma_sdk_model.ValueOrErrors<number[] | undefined>;
25
- inputOptions: _platforma_sdk_model.ValueOrErrors<{
26
- readonly ref: {
27
- readonly __isRef: true;
28
- readonly blockId: string;
29
- readonly name: string;
30
- };
31
- readonly label: string;
32
- }[]>;
33
- sheets: _platforma_sdk_model.ValueOrErrors<{
34
- axis: {
35
- readonly type: ValueType;
36
- readonly name: string;
37
- readonly domain?: {
38
- [x: string]: string;
39
- } | undefined;
40
- readonly annotations?: {
41
- [x: string]: string;
42
- } | undefined;
43
- readonly parentAxes?: number[] | undefined;
44
- };
45
- options: {
46
- value: string | number;
47
- label: string;
48
- }[];
49
- defaultValue?: (string | number) | undefined;
50
- }[] | undefined>;
51
24
  pt: _platforma_sdk_model.ValueOrErrors<_platforma_sdk_model.PTableHandle | undefined>;
52
25
  }, UiState, "/" | "/layout" | "/form-components" | "/log-view" | "/modals" | "/select-files" | "/inject-env" | "/dropdowns" | "/use-watch-fetch" | "/typography" | "/ag-grid-vue" | "/pl-ag-data-table" | "/errors" | "/text-fields" | "/tabs" | "/drafts" | "/buttons">;
53
26
  type BlockOutputs = InferOutputsType<typeof platforma>;
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _platforma_sdk_model from '@platforma-sdk/model';
2
- import { PlDataTableState, PlRef, PlTableFiltersModel, ValueType, InferOutputsType, InferHrefType } from '@platforma-sdk/model';
2
+ import { PlDataTableState, PlTableFiltersModel, InferOutputsType, InferHrefType } from '@platforma-sdk/model';
3
3
  import { z } from 'zod';
4
4
 
5
5
  declare const $BlockArgs: z.ZodObject<{
@@ -12,7 +12,6 @@ declare const $BlockArgs: z.ZodObject<{
12
12
  type BlockArgs = z.infer<typeof $BlockArgs>;
13
13
  type TableState = {
14
14
  tableState: PlDataTableState;
15
- anchorColumn?: PlRef;
16
15
  filterModel: PlTableFiltersModel;
17
16
  };
18
17
  type UiState = {
@@ -22,32 +21,6 @@ declare const platforma: _platforma_sdk_model.Platforma<{
22
21
  numbers: number[];
23
22
  }, {
24
23
  numbers: _platforma_sdk_model.ValueOrErrors<number[] | undefined>;
25
- inputOptions: _platforma_sdk_model.ValueOrErrors<{
26
- readonly ref: {
27
- readonly __isRef: true;
28
- readonly blockId: string;
29
- readonly name: string;
30
- };
31
- readonly label: string;
32
- }[]>;
33
- sheets: _platforma_sdk_model.ValueOrErrors<{
34
- axis: {
35
- readonly type: ValueType;
36
- readonly name: string;
37
- readonly domain?: {
38
- [x: string]: string;
39
- } | undefined;
40
- readonly annotations?: {
41
- [x: string]: string;
42
- } | undefined;
43
- readonly parentAxes?: number[] | undefined;
44
- };
45
- options: {
46
- value: string | number;
47
- label: string;
48
- }[];
49
- defaultValue?: (string | number) | undefined;
50
- }[] | undefined>;
51
24
  pt: _platforma_sdk_model.ValueOrErrors<_platforma_sdk_model.PTableHandle | undefined>;
52
25
  }, UiState, "/" | "/layout" | "/form-components" | "/log-view" | "/modals" | "/select-files" | "/inject-env" | "/dropdowns" | "/use-watch-fetch" | "/typography" | "/ag-grid-vue" | "/pl-ag-data-table" | "/errors" | "/text-fields" | "/tabs" | "/drafts" | "/buttons">;
53
26
  type BlockOutputs = InferOutputsType<typeof platforma>;
package/dist/index.js CHANGED
@@ -1,28 +1,38 @@
1
- import { BlockModel, isPColumnSpec, getUniquePartitionKeys, createPlDataTableSheet, isPColumn, createPlDataTable } from '@platforma-sdk/model';
1
+ import { BlockModel, createPlDataTable } from '@platforma-sdk/model';
2
2
  import { z } from 'zod';
3
3
 
4
4
  // src/index.ts
5
5
  var $BlockArgs = z.object({
6
6
  numbers: z.array(z.coerce.number())
7
7
  });
8
- var platforma = BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3] }).withUiState({ dataTableState: void 0 }).output("numbers", (ctx) => ctx.outputs?.resolve("numbers")?.getDataAsJson()).retentiveOutput("inputOptions", (ctx) => {
9
- return ctx.resultPool.getOptions((spec) => isPColumnSpec(spec));
10
- }).output("sheets", (ctx) => {
11
- if (!ctx.uiState?.dataTableState?.anchorColumn) return void 0;
12
- const anchor = ctx.resultPool.getPColumnByRef(ctx.uiState.dataTableState.anchorColumn);
13
- if (!anchor) return void 0;
14
- const r = getUniquePartitionKeys(anchor.data);
15
- if (!r) return void 0;
16
- return r.map((values, i) => createPlDataTableSheet(ctx, anchor.spec.axesSpec[i], values));
17
- }).output("pt", (ctx) => {
18
- if (ctx.uiState?.dataTableState?.anchorColumn === void 0) return void 0;
19
- const anchorColumn = ctx.resultPool.getDataByRef(ctx.uiState.dataTableState.anchorColumn);
20
- if (!anchorColumn || !isPColumn(anchorColumn)) {
21
- console.error("Anchor column is undefined or is not PColumn", anchorColumn);
22
- return void 0;
23
- }
24
- if (ctx.uiState.dataTableState.tableState.pTableParams?.filters === void 0) return void 0;
25
- return createPlDataTable(ctx, [anchorColumn], ctx.uiState.dataTableState.tableState, [
8
+ var platforma = BlockModel.create("Heavy").withArgs({ numbers: [1, 2, 3] }).withUiState({ dataTableState: void 0 }).output("numbers", (ctx) => ctx.outputs?.resolve("numbers")?.getDataAsJson()).output("pt", (ctx) => {
9
+ if (!ctx.uiState?.dataTableState?.tableState.pTableParams?.filters) return void 0;
10
+ return createPlDataTable(ctx, [
11
+ {
12
+ id: "example",
13
+ spec: {
14
+ kind: "PColumn",
15
+ valueType: "String",
16
+ name: "example",
17
+ annotations: {
18
+ "pl7.app/label": "String column"
19
+ },
20
+ axesSpec: [
21
+ {
22
+ type: "Int",
23
+ name: "index",
24
+ annotations: {
25
+ "pl7.app/label": "Int axis"
26
+ }
27
+ }
28
+ ]
29
+ },
30
+ data: [
31
+ { key: [1], val: "1" },
32
+ { key: [2], val: "2" }
33
+ ]
34
+ }
35
+ ], ctx.uiState.dataTableState.tableState, [
26
36
  ...ctx.uiState.dataTableState.tableState.pTableParams?.filters,
27
37
  ...ctx.uiState.dataTableState.filterModel?.filters ?? []
28
38
  ]);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import {\n BlockModel,\n InferHrefType,\n InferOutputsType,\n PlDataTableState,\n ValueType,\n isPColumn,\n isPColumnSpec,\n PlRef,\n getUniquePartitionKeys,\n createPlDataTableSheet,\n createPlDataTable,\n PlTableFiltersModel\n} from '@platforma-sdk/model';\nimport { z } from 'zod';\n\nexport const $BlockArgs = z.object({\n numbers: z.array(z.coerce.number())\n});\n\nexport type BlockArgs = z.infer<typeof $BlockArgs>;\n\nexport type TableState = {\n tableState: PlDataTableState;\n anchorColumn?: PlRef;\n filterModel: PlTableFiltersModel;\n};\n\nexport type UiState = {\n dataTableState: TableState | undefined;\n};\n\nexport const platforma = BlockModel.create('Heavy')\n\n .withArgs<BlockArgs>({ numbers: [1, 2, 3] })\n\n .withUiState<UiState>({ dataTableState: undefined })\n\n .output('numbers', (ctx) => ctx.outputs?.resolve('numbers')?.getDataAsJson<number[]>())\n\n .retentiveOutput('inputOptions', (ctx) => {\n return ctx.resultPool.getOptions((spec) => isPColumnSpec(spec));\n })\n\n .output('sheets', (ctx) => {\n if (!ctx.uiState?.dataTableState?.anchorColumn) return undefined;\n\n const anchor = ctx.resultPool.getPColumnByRef(ctx.uiState.dataTableState.anchorColumn);\n if (!anchor) return undefined;\n\n const r = getUniquePartitionKeys(anchor.data);\n if (!r) return undefined;\n return r.map((values, i) => createPlDataTableSheet(ctx, anchor.spec.axesSpec[i], values));\n })\n\n .output('pt', (ctx) => {\n if (ctx.uiState?.dataTableState?.anchorColumn === undefined) return undefined;\n\n const anchorColumn = ctx.resultPool.getDataByRef(ctx.uiState.dataTableState.anchorColumn);\n if (!anchorColumn || !isPColumn(anchorColumn)) {\n console.error('Anchor column is undefined or is not PColumn', anchorColumn);\n return undefined;\n }\n\n // wait until sheet filters are set\n if (ctx.uiState.dataTableState.tableState.pTableParams?.filters === undefined) return undefined;\n\n return createPlDataTable(ctx, [anchorColumn], ctx.uiState.dataTableState.tableState, [\n ...ctx.uiState.dataTableState.tableState.pTableParams?.filters,\n ...(ctx.uiState.dataTableState.filterModel?.filters ?? [])\n ]);\n })\n\n .sections((ctx) => {\n return [\n { type: 'link', href: '/', label: 'Icons/Masks' },\n { type: 'link', href: '/layout', label: 'Layout' },\n { type: 'link', href: '/form-components', label: 'Form Components' },\n { type: 'link', href: '/log-view', label: 'PlLogView' },\n { type: 'link', href: '/modals', label: 'Modals' },\n { type: 'link', href: '/select-files', label: 'Select Files' },\n { type: 'link', href: '/inject-env', label: 'Inject env' },\n { type: 'link', href: '/dropdowns', label: 'Dropdowns' },\n { type: 'link', href: '/use-watch-fetch', label: 'useWatchFetch' },\n { type: 'link', href: '/typography', label: 'Typography' },\n { type: 'link', href: '/ag-grid-vue', label: 'AgGridVue' },\n { type: 'link', href: '/pl-ag-data-table', label: 'PlAgDataTable' },\n { type: 'link', href: '/errors', label: 'Errors' },\n { type: 'link', href: '/text-fields', label: 'PlTextField' },\n { type: 'link', href: '/tabs', label: 'PlTabs' },\n { type: 'link', href: '/drafts', label: 'Drafts' },\n { type: 'link', href: '/buttons', label: 'ButtonsPage' },\n ];\n })\n\n .done();\n\nexport type BlockOutputs = InferOutputsType<typeof platforma>;\nexport type Href = InferHrefType<typeof platforma>;\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import {\n BlockModel,\n InferHrefType,\n InferOutputsType,\n PlDataTableState,\n createPlDataTable,\n PlTableFiltersModel,\n PColumn,\n PColumnValues,\n PObjectId,\n} from '@platforma-sdk/model';\nimport { z } from 'zod';\n\nexport const $BlockArgs = z.object({\n numbers: z.array(z.coerce.number())\n});\n\nexport type BlockArgs = z.infer<typeof $BlockArgs>;\n\nexport type TableState = {\n tableState: PlDataTableState;\n filterModel: PlTableFiltersModel;\n};\n\nexport type UiState = {\n dataTableState: TableState | undefined;\n};\n\nexport const platforma = BlockModel.create('Heavy')\n\n .withArgs<BlockArgs>({ numbers: [1, 2, 3] })\n\n .withUiState<UiState>({ dataTableState: undefined })\n\n .output('numbers', (ctx) => ctx.outputs?.resolve('numbers')?.getDataAsJson<number[]>())\n\n .output('pt', (ctx) => {\n if (!ctx.uiState?.dataTableState?.tableState.pTableParams?.filters) return undefined;\n return createPlDataTable(ctx, [\n {\n id: \"example\" as PObjectId,\n spec: {\n kind: 'PColumn',\n valueType: 'String',\n name: 'example',\n annotations: {\n 'pl7.app/label': 'String column',\n },\n axesSpec: [\n {\n type: 'Int',\n name: 'index',\n annotations: {\n 'pl7.app/label': 'Int axis',\n },\n }\n ]\n },\n data: [\n { key: [1], val: '1' },\n { key: [2], val: '2' }\n ]\n } satisfies PColumn<PColumnValues>\n ], ctx.uiState.dataTableState.tableState, [\n ...ctx.uiState.dataTableState.tableState.pTableParams?.filters,\n ...(ctx.uiState.dataTableState.filterModel?.filters ?? [])\n ]);\n })\n\n .sections((ctx) => {\n return [\n { type: 'link', href: '/', label: 'Icons/Masks' },\n { type: 'link', href: '/layout', label: 'Layout' },\n { type: 'link', href: '/form-components', label: 'Form Components' },\n { type: 'link', href: '/log-view', label: 'PlLogView' },\n { type: 'link', href: '/modals', label: 'Modals' },\n { type: 'link', href: '/select-files', label: 'Select Files' },\n { type: 'link', href: '/inject-env', label: 'Inject env' },\n { type: 'link', href: '/dropdowns', label: 'Dropdowns' },\n { type: 'link', href: '/use-watch-fetch', label: 'useWatchFetch' },\n { type: 'link', href: '/typography', label: 'Typography' },\n { type: 'link', href: '/ag-grid-vue', label: 'AgGridVue' },\n { type: 'link', href: '/pl-ag-data-table', label: 'PlAgDataTable' },\n { type: 'link', href: '/errors', label: 'Errors' },\n { type: 'link', href: '/text-fields', label: 'PlTextField' },\n { type: 'link', href: '/tabs', label: 'PlTabs' },\n { type: 'link', href: '/drafts', label: 'Drafts' },\n { type: 'link', href: '/buttons', label: 'ButtonsPage' },\n ];\n })\n\n .done();\n\nexport type BlockOutputs = InferOutputsType<typeof platforma>;\nexport type Href = InferHrefType<typeof platforma>;\n"]}